Home  >  Article  >  Database  >  Oracle Database 10g PL/SQL Programming -名词所有格处理

Oracle Database 10g PL/SQL Programming -名词所有格处理

WBOY
WBOYOriginal
2016-06-07 16:46:421130browse

Oracle Database 10g PL/SQL Programming -名词所有格处理

这里,我们谈谈Oracle10g中对名词所有格的处理。

下面的字符串就在其中的一个词中包含名词所有格。

begin
  dbms_output.put_line('1 ' ||'nimeng's dog');
end;

执行错误:ORA-01756:括号内的字符串没有正确结束

出现这个错误的原因是对名词所有格的处理上有所不当,不清楚字符串到底是在哪里结束。对于oracle的所有版本,都可以在所有格的位置上使用两个单引号来避免这个问题。

示例如下:

begin
  dbms_output.put_line('1 ' ||'nimeng''s dog');
end;
     为了让人们使用名词所有格时便于处理单引号和双引号的问题,,Oracle10g抓吗引入了新语法,q'[]',其中的中括弧代表用户自定义的分隔符。下面示例列举了处理名词所有格的几种不同方法:

begin
  dbms_output.put_line('1 ' ||'nimeng''s dog');
  dbms_output.put_line('2 ' ||q'[nimeng's dog]');
  dbms_output.put_line('3 ' ||q'!nimeng's dog!');
  dbms_output.put_line('4 ' ||q'');
  dbms_output.put_line('5 ' ||q'%nimeng's dog%');
end;

更多Oracle相关信息见Oracle 专题页面 ?tid=12

linux

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn