转自: http://bbs.cnd2.com/viewthread.php?tid=1376
pl/sql 转义字符:'
select '''' from dual;
结果:'
在plsql里边执行:
update userinfo set pageurl='myjsp?page=1&pagesize=10' where id='test'
这条sql语句往数据库的pageurl字段放进去了一个url地址,但是执行的时候却并非那么理想,因为这其中有一个oracle的特殊字符,需要进行转义,那就是字符'&'.
怎么处理上例中的特殊字符?
两个办法:
1) update userinfo set pageurl='myjsp?page=1'||'&'||'pagesize=10' where id='test'
2) update userinfo set pageurl='myjsp?page=1'||chr(38)||'pagesize=10' where id='test'
其中||是连字符, chr(38)跟ASCII的字符转码是一致的。
plsql中还可以set define off来关闭特殊字符,还可以用show define来查看有些特殊定义的字符。
转义字符 %
处理手法如&
转义字符 ’ 单引号 在PL/SQL 里 两个单引号等于一个单引号
双引号 = chr(34)
oracle转义字符总结:
select * from t_mark_market where addr like '%\%%' ESCAPE '\';
说明:
ESCAPE '\' 这句的作用声明\为转义字符
则在执行like '%\%%'时会将\%进行转义。
同理还可以处理特殊字符
&、_等