開発時に発生するエラー
ORA-01756: 引用符付き文字列が正しく終了していません。
単一引用符(')を検索条件などのデータに使用するための記述方法の問題。
原因
単一引用符(')を一般的なエスケープ文字でエスケープしようとしていると思われる。
また、エスケープ定義文字を使用しても同様にエラーとなる。
SELECT *
FROM USER_MASTER
WHERE USER_NAME = 'あいう\'えお' ESCAPE '\' ;
ORA-01756: 引用符付き文字列が正しく終了していません
対応
ORA-00904:無効な識別子です。における リテラル項目を単一引用符(')で囲んで使用していない。事への対処法と同じ。
単一引用符(')を代入したい場合には。単一引用符(')を連続記入する。
SELECT *
FROM USER_MASTER
WHERE USER_NAME = 'あいう''えお' ;
対応
リテラル表記 における引用符(')の置換を行なう。
SELECT *
FROM USER_MASTER
WHERE USER_NAME = q'{あいうえお}' ;
一覧ページへ戻る
OTN (Oracle Technology Network)によるエラーメッセージによる情報だけでは、対処に困ったエラーについてのプラクティスです。
ベスト・プラクティスというわけではないので、書いてあることに固執しないで広い視野でエラー対応してください。