Oracle 特殊符號'&'的處理

在SQL*Plus中默認的"&"表示替代變量,也就是說,只要在命令中出現該符號,SQL*Plus就會要你輸入替代值。這就意味着你無法將一個含有該符號的字符串輸入數據庫或賦給變量,如字符串“SQL&Plus”系統會理解爲以“SQL”打頭的字符串,它會提示你輸入替代變量Plus的值,如果你輸入ABC,則最終字符串轉化爲“SQLABC”。
方法一:set define off
set define off 則關閉該功能,"&"將作爲普通字符,如上例,最終字符就爲“SQL&Plus”
set define off關閉替代變量功能
set define on 開啓替代變量功能
set define *  將默認替代變量標誌符該爲"*"(也可以設爲其它字符)
方法二:在SQL語句中將'&'替換成chr(38),因爲chr(38)是'&'的ASCII碼
SQL> Select 'Tom' || chr(38) || 'Jerry' from dual;
方法三:分拆原來的字符串
SQL> Select 'Tom' || '&' || 'Jerry' from dual;

發佈了73 篇原創文章 · 獲贊 8 · 訪問量 23萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章