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

投稿日:

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

ネットで探すと、

  • 全角スペースが原因

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

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

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

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

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







-C#, ORACLE
-,

関連記事

C#で発生するORA-01036:illegal variable name/numberのエラーの解決法

毎度毎度、原因の分かりづらいエラーにハマりますw 今回は、「ORA-01036:illegal variable name/number」。 日本語に直訳された内容だと「変数の名前/数が無効です」とな …

続) 何度だって引っかかるORACLEのエラー・・・。ORA-01008:バインドされていない変数があります。

この土日は休日出勤でした・・・ そして、昨日・・・新しい現象が発生しました。 日本の中心付近で仕様変更と闘うSE日記日本の中心付近で仕様変更と闘うSE日記http://ht-jp.net/blog/p …

no image

OracleでLISTAGG関数を使ったら、世界が変わった話。

11gR2からGROUP_CONCAT(複数行をまとめて1列に)が可能に http://d.hatena.ne.jp/kkz_tech/20150311/1426048592 日本の中心付近で仕様変更 …

[C#]ToStringメソッドで簡単に桁区切りを実現する方法

結論 ToStringメソッドと書式設定で解決。 int a = 1; int b = 1; int ab = a * b; string c = ""; //「1」になる c = …

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

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


カテゴリー