『壹』 oracla特殊字元轉義的方法匯總
1、」&「 轉義
這個是Oracle裡面用來識別自定義變數的設置,現在我們在sql*PLUS下將其關閉:
SQL Set define OFF;
然後再次執行導入腳本,OK!問題搞定。
注意:如果是在TOAD中執行,建議在每一個要導入的腳本第一行加上前面那句關閉define的話,否則當你導入第二個含有特殊字元的腳本的時候,又會出錯。
如果是在SQL*PLUS中執行,則只需要設置一次define OFF,後面就可以連續導入了。直到你重新設置define ON為止。
·方法二:在SQL語句中將'&'替換成chr(38),因為chr(38)是『&』的ASCII碼
SQL Select 'Tom' || chr(38) || 'Jerry' from al;
·方法三:分拆原來的字元串
SQL Select 'Tom' || '&' || 'Jerry' from al;
我們可以看到,方法一最為簡便,而且效率也最高。方法二因為有一個調用函數的過程,所以性能稍差。方法三需要兩次連接字元串,效率最差!
2、」 ' 「 轉義
·方法一:使用轉義字元
SQL Select 'test' || '''' from al;
第三個'才是我們真正的內容
·方法二:同樣是使用轉義字元,只不過方式不同而已
SQL Select 'test ''' from al;
注意:這里的第二個,第三個'就是我們上面方法一中提到的轉義符和真正的內容
『貳』 sql2005資料庫中,哪些特殊字元需要轉義
這只是在拼接
SQL語句
中,但是如果再FullTextSearch以及LIKE
Search里,規則又有所不同。所以如果可能,盡量使用參數來做,而不是直接拼接。
『叄』 SQL 轉義
用 exec 執行的目的,是因為,這個SQL語句,是動態的。
最後執行什麼語句,依賴於前面的執行結果。
所以沒有辦法直接寫。
IGemWeg/'+@IQty+'
這里的 / 是 除。 不是對 ' 的轉義。
'的轉義, 好像是 ''
轉義的用途是, 如果你的 SQL 語句裡面,有個字元串要插入varchar的欄位, 但是數據裡面有個 單引號。
這個時候,需要轉義,讓 SQL 語句能夠正確地把 單引號插入到 varchar 欄位的數據中
『肆』 sql怎麼使用escape標識轉義符
在處理sql時,遇到insert 或update 的參數中含有特殊字元「&」,下劃線「_」, 單引號" ' "等時,要做轉義處理。x0dx0ax0dx0a例:插入特殊字元'&'x0dx0aupdate userinfo set pageurl='myjsp?page=1&pagesize=10' where id='test'x0dx0a兩個辦法:x0dx0a1) update userinfo set pageurl='myjsp?page=1'||'&'||'pagesize=10' where id='test'x0dx0a2) update userinfo set pageurl='myjsp?page=1'||chr(38)||'pagesize=10' where id='test'x0dx0a註:其中 || 是連字元, chr(38)跟ASCII的字元轉碼是一致的。x0dx0ax0dx0a例:搜索以「QA_」開頭的數據 :x0dx0aselect CODE from CNT_CODELIST where code like 'QA_%'x0dx0ax0dx0a結果為:QA_OFFICER_1,QA_OFFICER_2,QA112x0dx0a不符合,必須把下劃線轉義x0dx0ax0dx0aselect CODE from CNT_CODELIST where code like 'QA/_%'escape '/'x0dx0a結果為:QA_OFFICER_1,QA_OFFICER_2x0dx0ax0dx0a轉義字元 % 處理手法如&x0dx0ax0dx0a轉義字元 』單引號 在PL/SQL里兩個單引號等於一個單引號x0dx0ax0dx0a補充:x0dx0aSQL中escape的用法x0dx0a使用 ESCAPE 關鍵字定義轉義符。 在模式中,當轉義符置於通配符之前時,該通配符就解釋為普通字元。x0dx0a例如,要搜索在任意位置包含字元串 5% 的字元串: WHERE ColumnA LIKE '%5/%%' ESCAPE '/' x0dx0a前後兩個%作為通配符使用,中間的%經過ESCAPE 轉義,作為普通字元使用
『伍』 sql需要轉義的字元有哪些
特殊轉義:單引號 -- 用2個單引號''
兩種比較常見的方式
(1)用中括弧[]轉義
WHERE ColumnA LIKE 'aaa[_]bbb' ---
(2)用關鍵字ESCAPE 轉義
WHERE ColumnA LIKE '%aaa/%bbb%' ESCAPE '/'
註:
1)方式2不如1方便,適用面也窄小,清晰度也差。
2)方式0在使用動態SQL,尤其是「嵌套 + 代碼生成」的高級應用中,很容易出錯
『陸』 SQL 轉義字元,如何在存儲過程中寫 ' (單引號)
在存儲過程中,密碼中有』(單引號),第一反應使用轉義字元。C++ 的轉義字元是:\SQL 的轉義字元是:'(單引號)例:select * from tbl where uyear='''06'請注意其中紅色背景的單引號,它即表示轉義字元,如果我們省略,則整個語句會出錯,轉義字元不會輸出,上例中 uyear 的實際條件值為 '06,而不是 ''06為什麼不能省略呢,假如我們省略,上句變成:select * from tbl where uyear=''06'由於在 SQL 中單引號表示字元串的開始和結束符號,於是 SQL 解釋器會認為語句中灰色背景的為字元串,其後的語句顯然是個錯誤的語句,當然會報錯,為了解決字元串的單引號問題,就出現了轉義字元單。
『柒』 sql怎麼使用escape標識轉義符
在處理sql時,遇到insert 或update 的參數中含有特殊字元「&」,下劃線「_」, 單引號" ' "等時,要做轉義處理。
例:插入特殊字元'&'
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'
註:其中 || 是連字元, chr(38)跟ASCII的字元轉碼是一致的。
例:搜索以「QA_」開頭的數據 :
select CODE from CNT_CODELIST where code like 'QA_%'
結果為:QA_OFFICER_1,QA_OFFICER_2,QA112
不符合,必須把下劃線轉義
select CODE from CNT_CODELIST where code like 'QA/_%'escape '/'
結果為:QA_OFFICER_1,QA_OFFICER_2
轉義字元 % 處理手法如&
轉義字元 』單引號 在PL/SQL里兩個單引號等於一個單引號
補充:
SQL中escape的用法
使用 ESCAPE 關鍵字定義轉義符。 在模式中,當轉義符置於通配符之前時,該通配符就解釋為普通字元。
例如,要搜索在任意位置包含字元串 5% 的字元串: WHERE ColumnA LIKE '%5/%%' ESCAPE '/'
前後兩個%作為通配符使用,中間的%經過ESCAPE 轉義,作為普通字元使用
『捌』 sql特殊字元怎麼轉義
1 中括弧 []
2 採用easpe 轉
sql 轉義字元操作方式
3 如果是單引號,需要使用兩個引號
請採納!
『玖』 sql 轉義字元類似於{}這種符號怎麼轉義
SELECT * , REPLACE( title_template, '{actor}', '' )
FROM `pre_home_feed`
ORDER BY `pre_home_feed`.`dateline` ASC LIMIT 0 , 30
『拾』 sql語句中如何插入轉義字元
只要在插入庫之前作處理就可以了。利用replace函數把單引號替換為其它字元,如str.replace("'","*");其中str是你加密後的字元串!