Oracle q' 簡化單引號轉義介紹

hurp_oracle發表於2016-08-22

oracle本身預設的是單引號,但是在大家寫儲存過程或者寫SQL語句時,有時候需要拼SQL或者是SQL的值裡需要傳入含單引號的值,此時就需要使用兩個單引號"''"來進行轉義,其實oracle本身提供了這種轉換預設單引號為其他標識的方法那就是——"q"

q [Oracle's quote operator]


從10g開始引入該特性。q'後面的字元可以是:
  •     !
  •     [ ]
  •     { }
  •     ( )
  •     < >

前提是這些字元不會出現在後續的SQL中。

 

SELECT 'it''s an example' FROM dual;
SELECT q'[it's an example]' FROM dual;

SELECT q'\it's an example\' FROM dual;

 

這幾種寫法都正確,後兩者者顯然可讀性更強。 其中,\可以同時替換為其他相同字元。如,

SELECT q'ait's an examplea' FROM dual;


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29446986/viewspace-2123777/,如需轉載,請註明出處,否則將追究法律責任。

相關文章