Oracle中如何插入或更新特殊字符“&”?

  • 2019 年 10 月 11 日
  • 筆記

Q

题目

Oracle中如何插入或更新特殊字符“&”?

A

答案

假设有如下的SQL语句:

UPDATE USERINFO SET PAGEURL = 'MYJSP?PAGE=1&PAGESIZE=10' WHERE ID='TEST';

那么,怎么处理上例中的特殊字符“&”呢?

主要有如下两种解决方法:

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';

其中“||”是连字符,&对应的ASCII码为38,因此CHR(38)用来表示“&”。PL/SQL中还可以使用SET DEFINE OFF来关闭特殊字符,还可以用SHOW DEFINE来查看有些特殊定义的字符。