如何向Oracle數據庫中插入帶有特殊符號“&”的數據

         今天在向Oracle數據庫中插入數據的時候遇到了下面這個錯誤:


        經過了一番排查之後,發現彈出這個對話框的原因是我插入的數據中有“&”這個符號,

因爲要插入數據的表中有url這個字段,而上圖中的兩個變量正是url中的變量:


insert into LOT (DATE,SOURCE) 

values (to_date('06-08-2017 17:20:00', 'dd-mm-yyyy hh24:mi:ss'),

'http://chart.cp.360.cn/kaijiang?lotId=167&spanType=2&span=');


         因此需要對特殊字符“&”進行轉義,方法有兩種:

insert into LOT (DATE,SOURCE) 

values (to_date('06-08-2017 17:20:00', 'dd-mm-yyyy hh24:mi:ss'),

'http://chart.cp.360.cn/kaijiang?lotId=167'||'&'||'spanType=2'||'&'||'span=');


insert into LOT (DATE,SOURCE) 

values (to_date('06-08-2017 17:20:00', 'dd-mm-yyyy hh24:mi:ss'),

'http://chart.cp.360.cn/kaijiang?lotId=167'||chr(38)||'spanType=2'||chr(38)||'span=');


       我們使用了|| 連字符, chr(38)跟ASCII的字符轉碼是一致的。

       注:plsql中還可以set define off來關閉特殊字符,還可以用show define來查看有些特殊定義的字符。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章