91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Oracle 10g SQL中q-quote怎么用

發布時間:2021-11-09 14:40:25 來源:億速云 閱讀:166 作者:小新 欄目:關系型數據庫

這篇文章給大家分享的是有關Oracle 10g SQL中q-quote怎么用的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

 在Oracle中,字符串的字面量如果含有單引號,那么必須轉義,而且轉義符是單引號',這樣加上表示字符串字面量的外層'',那么勢必要寫很多單引號,不僅可讀性降低,而且容易出錯。當然,使用chr(39),也可以代替引號,可能比寫多個單引號更好,可讀性強,但是畢竟這種寫法不是很常見。SO,在10g中,Oracle引入了q-quote的用法。
  常規字符字面量內單引號的使用:

dingjun123@ORADB> select ''' str from dual;
ERROR:
ORA-01756: 引號內的字符串沒有正確結束

--要使用轉義,兩個單引號表示一個單引號
dingjun123@ORADB> select '''' str from dual;
S
-
'

dingjun123@ORADB> select '''a''' str from dual;
STR
---
'a'


  另外可以使用CHR(39)作為引號來拼湊,比較簡潔

dingjun123@ORADB> SELECT 'It'||chr(39)||' a cat' str FROM dual;
STR
---------
It' a cat


    雖然使用chr(39),但是看起來還是很麻煩,所以10g引入了q-quote特性。允許按照指定規則也就是Q或q開頭(如果是national character literals,那就是N或n放在Q或q之前),然后'界定符號原始字面量界定符號',使用規則很簡單:

1) q-quote界定符可以是除了TAB,空格,回車外的任何單字節或多字節字符。
2) 除了單字節的的開始界定符是[,{,<,(,那么結束界定符必須是],},>,)  其他開始界定符與結束界定符必須一致
如:

--4個特殊單字節開始界定符是[,{,<,(,結束界定符必須是],},>,)
dingjun123@ORADB> SELECT q'[a'bc]' str FROM dual;
STR
----
a'bc

dingjun123@ORADB> SELECT q'{a'bc}' str FROM dual;
STR
----
a'bc

dingjun123@ORADB> SELECT q'' str FROM dual;
STR
----
a'bc

dingjun123@ORADB> SELECT q'(a'bc)' str FROM dual;
STR
----
a'bc

--因為【開始界定付是多字節,所以必須一致,特殊的就4個單字節界定符
dingjun123@ORADB> SELECT q'【a'bc[' FROM dual;
ERROR:
ORA-01756: 引號內的字符串沒有正確結束

dingjun123@ORADB> SELECT q'【a'bc【' FROM dual;
Q'【
----
a'bc

--因為]不是4個特殊界定符的開始界定符
dingjun123@ORADB> SELECT q']a'bc[' FROM dual;
ERROR:
ORA-01756: 引號內的字符串沒有正確結束

dingjun123@ORADB> SELECT q']a'bc]' FROM dual;
Q']A
----
a'bc

--其他非特殊的4個開始界定符的要求開始與結束一致
--a是界定符

dingjun123@ORADB> SELECT q'ab'cda' str FROM dual; STR
----
b'cd

--A是界定符,但是結束的是a,不一致
dingjun123@ORADB> SELECT q'Ab'cda' str FROM dual;
ERROR:
ORA-01756: 引號內的字符串沒有正確結束

dingjun123@ORADB> SELECT q'Ab'cdA' str FROM dual;
STR
----
b'cd

--+號是界定符
dingjun123@ORADB> SELECT q'+b'cd+' str FROM dual;
STR
----
b'cd

--單引號是界定符
dingjun123@ORADB> select q''ab'c'' from dual;
Q''A
----
ab'c

--National character literals
dingjun123@ORADB> SELECT nq'' str from dual;
STR
----------
a'b'c

dingjun123@ORADB> SELECT Nq'' str from dual;
STR
----------
a'b'c

dingjun123@ORADB> SELECT NQ'' str from dual;
STR
----------
a'b'c

dingjun123@ORADB> SELECT nQ'' str from dual;
STR
----------
a'b'c


    一般使用的時候,都是使用4個特殊字符作為界定符,這樣前后界定符包含了原生態字符串,可讀性更好。

感謝各位的閱讀!關于“Oracle 10g SQL中q-quote怎么用”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

加查县| 西畴县| 探索| 开封市| 巴彦淖尔市| 鞍山市| 高清| 虎林市| 蒙阴县| 噶尔县| 综艺| 峨眉山市| 普安县| 田阳县| 军事| 长阳| 珲春市| 平安县| 于田县| 周口市| 商城县| 乡宁县| 金寨县| 临海市| 米脂县| 阿瓦提县| 铁力市| 闽清县| 建湖县| 商都县| 临城县| 军事| 甘洛县| 济宁市| 古丈县| 虎林市| 永昌县| 九江市| 南投县| 界首市| 西藏|