SQL 中的特殊字元 處理

2021-08-27 07:36:08 字數 1252 閱讀 4905

update userinfo set pageurl='myjsp?page=1[color=red][b]&[/b][/color]pagesize=10' where id='test'

怎麼處理上例中的特殊字元?

兩個辦法:

1) update userinfo set pageurl='myjsp?page=1[color=red][b]'||'&'||'[/b][/color]pagesize=10' where id='test'

2) update userinfo set pageurl='myjsp?page=1[color=red][b]'||chr(38)||'[/b][/color]pagesize=10' where id='test'

其中 || 是連字元, chr(38)跟ascii的字元轉碼是一致的。

[b]如果是在sql*plus中,注意是命令列的那種:[/b]還可以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 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.

[b]如何轉義 下劃線 _ [/b]

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

[b]轉義字元 % [/b] 處理手法如&

[b]轉義字元 』單引號[/b] 在pl/sql裡兩個單引號等於乙個單引號

[b]雙引號[/b] = chr(34)

sql處理特殊字元

我們都知道sql server查詢過程中,單引號 是特殊字元,所以在查詢的時候要轉換成雙單引號 但這只是特殊字元的乙個,在實際專案中,發現對於like操作還有以下特殊字元 下劃線 百分號 方括號 以及尖號 其用途如下 下劃線 用於代替乙個任意字元 相當於正規表示式中的 百分號 用於代替任意數目的任意...

sql處理特殊字元

我們都知道sql server查詢過程中,單引號 是特殊字元,所以在查詢的時候要轉換成雙單引號 但這只是特殊字元的乙個,在實際專案中,發現對於like操作還有以下特殊字元 下劃線 百分號 方括號 以及尖號 其用途如下 下劃線 用於代替乙個任意字元 相當於正規表示式中的 百分號 用於代替任意數目的任意...

SQL特殊字元處理

使用者輸入如果沒有任何限制的話,則必須對特殊字元進行變換。如果對單引號不進行變換,則會發生資料庫錯誤,甚至可能導致系統崩潰。不過迴避方法卻非常簡單,只要將單引號 轉換成兩個單引號 就可以了。例 select from tbl where col abc def 模糊查詢的語句雖然不會發生sql錯誤,...