为了账号安全,请及时绑定邮箱和手机立即绑定

PL / SQL,如何转义字符串中的单引号?

PL / SQL,如何转义字符串中的单引号?

慕容708150 2019-10-30 11:13:03
在Oracle PL / SQL中,如何转义字符串中的单引号?我以这种方式尝试过,它不起作用。declare  stmt varchar2(2000);begin  for i in 1021 .. 6020  loop    stmt := 'insert into MY_TBL (Col) values(\'ER0002\')';    dbms_output.put_line(stmt);    execute immediate stmt;    commit;  end loop;exception  when others then    rollback;    dbms_output.put_line(sqlerrm);end;/
查看完整描述

3 回答

?
Qyouu

TA贡献1786条经验 获得超11个赞

您可以使用文字引号:


stmt := q'[insert into MY_TBL (Col) values('ER0002')]';

文字文档可在此处找到。


或者,您可以使用两个引号来表示单个引号:


stmt := 'insert into MY_TBL (Col) values(''ER0002'')';

带有Q语法的文字引用机制更加灵活易读。


查看完整回答
反对 回复 2019-10-30
?
一只萌萌小番薯

TA贡献1795条经验 获得超7个赞

这是一篇博客文章,应有助于转义字符串中的滴答声。


这是上述信息中最简单的方法:


最简单和最常用的方法是使用一个单引号,并且在两侧都使用两个单引号。


从双重选择'test单引号''';


以上语句的输出为:


测试单引号”


简单地说,您需要一个额外的单引号字符来打印单引号>字符。也就是说,如果您输入两个单引号字符,Oracle将打印一个。第一个>充当转义字符。


这是在Oracle中打印单引号的最简单方法。但是,当您必须打印一组引号而不是仅打印引号时,它将变得复杂。在这种情况下,以下方法可以正常工作。但这需要更多的打字工作。


查看完整回答
反对 回复 2019-10-30
  • 3 回答
  • 0 关注
  • 1302 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信