oracle 字符串 单引号

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle 字符串 单引号相关的知识,希望对你有一定的参考价值。

从oracle10.1开始,字符串中包含单引号 可以使用、[]、<>来包含字符串

这个怎么用?
只会使用:select 'a''b' as f1 from dual;
问题搞定了:
为方便其他不懂得,特在此注明:

【注】必须加上 q 否则报错。

ytbelwxg你咋个就不早点来啊,害我又查了半天,刚找到答案你就来了。
看来还是ytbelwxg功力深厚啊

参考技术A 应该没有,单引号只是一个转义符而已,把单引号加在特殊字符前把特殊字符作为字符串来显示

、[]、<> 这些符号可以在正则表达式中使用,不知道是不是你想要的
参考技术B select * from A a where a.num <>0;追问

我是说字符串里含有单引号啊,一般可以用两个单引号来表示,那么:
从oracle10.1开始,字符串中包含单引号 可以使用、[]、来包含字符串

这个怎么理解?怎么用

追答

这个好像不可以这样子的吧,我本机11g,试过了(字符串中包含单引号 可以使用、[]、来包含字符串), 都会报"ORA-01756:引号内的字符串没有正确结束"错误

参考技术C select q'['a''b']' from dual;

用这个试试本回答被提问者采纳

如何在oracle中插入含有半角单引号'的字符串

例如:
insert in tableName(colA,cloB) values(1,'Mike's cat')
这个语句会出误,因为“Mike's”中的半角单引号的原因。

想问大家,如何在不拆分“Mike's cat”这个字符串的情况下把它插入到表中?
问题已经解决,不光只有这种方法,用insert into tableName(colA,cloB) values(1,'Mike'||chr(39)||'s cat')也可以,这要在PL/SQL里才行,不然就把chr(39)换成char(39)。
问题中的into我误写成了in

insert in tableName(colA,cloB) values(1,'Mike''s cat')
两个单引号代替就可以了
参考技术A 你会不会语法啊?就算你那插不进去也应该是insert into

insert into tableName(colA,cloB) values(1,'Mike''s cat');
参考技术B 把'替换成'',就可以了

以上是关于oracle 字符串 单引号的主要内容,如果未能解决你的问题,请参考以下文章

如何在oracle中插入含有半角单引号'的字符串

oracle怎么将字符串中的转义符

Oracle 在字符串中输入单引号或特殊字符

oracle 中如何将字符串中的英文单引号替换为右斜杠+英文单引号

Oracle单引号问题

oracle插入字符串数据时,字符串中有'单引号