Oracle エスケープ文字には次のものが含まれます: 1. 単一引用符 (文字列を引用したり、それ自体をエスケープしたりできます)、2. 二重引用符 (不正な形式の文字をラップします)、3. および記号 (2 つのエスケープ文字を接続します)、Self、4. . エスケープ。特殊記号以外の記号をエスケープ文字として指定します。
#Oracle エスケープ文字は次のとおりです:
1、一重引用符
ORACLE では、一重引用符には 2 つの機能があります: 1) 文字列を引用する、2) それ自体をエスケープする。 文字列を引用する場合、単一引用符はペアで使用され、それ自体のエスケープは偶数である必要があるため、SQL ステートメントでは単一引用符はペアで使用する必要があります。Select 'abc' a,'' b, '''' c, ' '' ' d From Dual;複合エスケープ理解しやすいように、コネクタ || を使用して文字列を分割できます。接続記号 '||' を囲む一重引用符は、'||' が文字列の一部でない限り (これは動的 SQL で非常に一般的です)、まったく関係がありません。
Select 'name' || '''''' a, 'name''''' b From Dual; Output:name'' name''
2、二重引用符
1) 一般に、文字列内の二重引用符は通常の文字としてのみ扱われます。 現時点では、二重引用符をペアで使用する必要はありません:Select 'hh24"小时""mi""分"""ss"秒"' Results From Dual; Output:hh24"小时""mi""分"""ss"秒"2)
to_char の書式文字列に使用する場合、二重引用符には特別な効果があります。 , これは、「ORA-01821: 日付形式が認識されません」エラーを回避するために、不正な形式の文字をラップするためです。
to_char形式文字列の処理時に二重引用符は無視されます:
Select To_Char(Sysdate, 'hh24"小时"mi"分"ss"秒"') As "当前时间/时分秒" From Dual; Output:09小时05分08秒 --别名中也有此应用形式文字列は 'hh24"hour"mi"minute"ss"second"' です; 二重引用符を削除すると、有効な書式文字列である「hh24miss」が残ります。 ただし、二重引用符の使い方がよくわからない場合でも、少し面倒ではありますが、次のように処理できます。
Select To_Char(Sysdate, 'hh24') || '小时' || To_Char(Sysdate, 'mi') || '分' || To_Char(Sysdate, 'ss') || '秒' As Result From Dual; Output:09小时05分08秒
3,& (および記号)
はカスタム変数の識別/設定に使用され、その後に変数名が続きます。文字として使用する必要がある場合は、Chr(38)# を使用する必要があります。 ##、または 2 つの連続する &&
(置換 (それ自体を定義)<pre class="brush:php;toolbar:false">Select Chr(38) a, &#39;Tom&&Jerry&#39; b, &#39;Gun &#39;&#39;N Roses&#39; c From Dual;
Output:& Tom&Jerry Gun &#39;N Roses</pre>
非エスケープ文字としての特殊記号。主にワイルドカード エスケープに使用されます
Select Table_Name From User_Tables Where Table_Name Like 'TB=_%=_%' Escape '='; Output:TB_STUDENT_SCORE--筛选以TB开头,中间有两个_的表名関連学習の推奨事項:
Oracle データベース学習チュートリアル
以上がオラクルエスケープ文字とは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。