C# OracleDbAccessを使用して、SQL実行時にORA-00911 文字が無効です のエラー

投稿日:

表題のとおり、C#でOracleDbAccessを使用して、SQLを実行させる時に発生しました。

ネットで探すと、

  • 全角スペースが原因

とか出てきたので、SQL内のスペースを全て半角スペースに置き換えるも、エラーは発生・・・。
文字なので、Where句などで使用しているパラメータが影響しているのか???
と思ったけど、それも違う。

そもそも、SQLPlusでは実行可能なSQLを作成し、コピーしているのでSQL単独の問題では無いはず・・・
ベースの処理部分も、他の似た処理をコピペしてSQL部分だけ変更している・・・
っていうか、SQLPlus上では、全角スペースがあってもエラーにはならなかった。

で、コピー元のソースを(SQL以外の部分を見比べると・・・

SQLにセミコロン「;」が付いていました。
セミコロンを削除したら、エラーは発生せず。

以前、別のプロジェクトで同じ事で悩んだ気がするけど、かけらも思い出さなかったw







-C#, ORACLE
-,

関連記事

ORACLEでSPOOL処理の高速化を試す

ORACLEでSPOOL処理の高速化を考えてみた 事の発端は、お客様のお怒りでした・・・ なんで、お客さんに最新版のリリース時には、必ずスキーマ間の比較をすることを徹底しろと言われてしまったと。 まぁ …

ORACLEでCASE文を使用した時にORA-00932のエラーが出る

割と悩んだ・・・ 原因は、CASE文で使用している項目のデータ型が異なるのが原因みたいだけど、正直、ぴんと来てない現実w select case name when ‘A’ then ‘あ’ when …

OracleでLISTAGG関数を使ったけど、世界を変えられなかった話・・・

OracleでLISTAGG関数を使ったら、世界が変わった話。 はい、休日出勤でした。 そして、休日出勤の結果、以下のことが分かりました(泣 日本の中心付近で仕様変更と闘うSE日記OracleでLIS …

[ORACLE]最初の有効値を返すCOALESCE・・・読み方分からねぇw

知らなかったら、多分CASEとかで判定してた。 まぁ、人の書いたSQLは勉強になるよねって話・・・じゃないなw 事の発端は、今のプロジェクトで別の人が作った画面の修正をやることになったこと。 その人は …

[ORACLE]多分、例外的なora-00911:文字が無効ですエラーの解決方法

多分、このエラーを目にする機会はそれなりにあって、大体の対処法はググればすぐに見つかると思う。 例えば、 SQL実行時にはOKなのに、C#のOracleDbAccess実行時にエラーになる 全角スペー …


カテゴリー