環境
OS:WinXP Pro
言語:Delphi2007 Enterprise
DB:Oracle8i(8.1.7 wgs)データベース
3層の仕組みにてSQL文の問い合わせ、変更、追加を行える様にすること
①TClientDataset:cds1
↓
②TDatasetProvider:Dsp1
↓
③TSQLQuery:Qry1
↓
④TSQLConnection:Sc1
↓
⑤ORACLE8i
フォームに上記の①〜④のコンポーネントを貼り付けてリンクさせます。
③にSQLを設定する場合ですが、下記のSQLを設定します。
SELECT 'あいうえお' as Name, A.* FROM ABC A WHERE A.MANAGEMENTNO = :MANAGEMENTNO
■デザイン時にSQL設定 → 正常終了します
■実行時にSQL設定 → エラーが返ってきます(ORA-00920 関係演算子が無効です)
エラー時にはSQLMONITERでは以下のように表示されていました。
SELECT 'あいうえお' as Name,A.* FROM ABC A WHERE A.MANAGEMENT :1 = ?
SQLを実行する際のパラメータとして判断する位置が間違っていると思われます。
SQL文にリテラルの全角文字('あいうえお')を使用した事により起こるようです。
このような現象について何か解決策はありますでしょうか。
どなたかご教授頂けます様、宜しくお願いします。
ツイート | ![]() |