Oracle 的 SQL語句中如何處理‘&’等特殊符號

在Oracle中,如果在sql中出現'&'符號,會被自動轉義;
 
而被要求輸入在&符號後跟隨的字符串的值,例如:
 
update tablename set columnName='http://www.g.cn/cv2.jsp?spid=222&cid=333';
 
執行這個操作時,Oracle會提示
 
Enter value for cid:
 
原因是在Oracle中 & 符號是作爲轉義字符使用的。
 
解決方法, 
 
用Oracle的字符串處理函數chr處理。chr(38)表示 &符號
 
改寫:
 
update tablename set columnName='http://www.g.cn/cv2.jsp?spid=222'||chr(38)||'cid=333';
 
由此聯想開去,在數據庫中存入html的一些符號式,很可能都會出現這種情況,那麼如法炮製即可,如果有些符號的編碼不知道的,可以通過下面的方法來查詢:
 
select ascii('&') from dual;
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章