SQL中的特殊字符&處理(轉)


SQL 中的特殊字符&處理

update userinfo set pageurl = 'myjsp page=1&pagesize=10' where id = 'test';

怎么處理上例中的特殊字符?

/**兩個辦法,其中 || 是連字符, chr(38)跟ASCII的字符轉碼是一致的。*/
update userinfo
   set pageurl = 'myjsp page=1' || '&' || 'pagesize=10'
 where id = 'test';
update userinfo
   set pageurl = 'myjsp page=1' || chr(38) || 'pagesize=10'
 where id = 'test';

如果是在SQL*PLUS中,注意是命令行的那種:還可以set define off 來關閉特殊字符,還可以用show define來查看有些特殊定義的字符。

例如:

(方法一)
insert into t(col) values(chr(ascii('&'))) ; 
SQL> SHOW DEFINE 
define "&" (hex 26) <--- DEFINE的default值是 ‘&’ 
SQL> SET DEFINE OFF 
SQL> SHOW DEFINE 
define OFF 
SQL> INSERT INTO <table_name> VALUES ('AT&T'); 
/ 
1 row created
(方法二) 
SQL> SHOW ESCAPE 
escape OFF <--- ESCAPE的default值是 OFF 
SQL> SET ESCAPE ON 
SQL> SHOW ESCAPE 
escape "\" (hex 5c) 
SQL> INSERT INTO temp_table VALUES ('select * from emp where ename = \&1'); 
1 row created.

如何轉義 下划線 _ 

select ... from ... where ... like '/_%' escape '/';

轉義字符 % 處理手法如&

轉義字符 ’單引號    在PL/SQL里兩個單引號等於一個單引號

雙引號 = chr(34)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM