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

投稿日:

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

ネットで探すと、

  • 全角スペースが原因

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

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

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

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

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







-C#, ORACLE
-,

関連記事

ORACLEで他のスキーマでSQLを実行した時に、権限不足で「ORA-01031: 権限が不足しています。」のエラーになる

A5Mk2 http://www.wind.sannet.ne.jp/m_matsu/developer/a5m2/ 普段、SQL関連は、A5Mk2っていうソフトを使用しています。 今回のエラーは、自 …

[C#]文字を繰り返したものを取得したい。

いちいちfor文とかで繰り返すのも効率が悪いなと思ってたので、処理を関数化・・・ ただ、共通関数として登録しないので、別のところで使いたい場合は、同じ関数が複数登録されちゃうことに・・・ 更には、思い …

[ORACLE]Oracleに接続できない時に確認すること

Oracleを新しくインストールした時に、中々接続できなかったので、その時に確認しておくべき事項のまとめ。 少なくとも、これは先にやっておいた方がいいこととか。 前提条件 前提と書くとものものしいけど …

Excelでシートをコピーする時に、「名前が既に存在します。」と言われるのを回避して、Excel出力を早くしたい。

結論から書いてしまうと、名前の重複を削除しても、Excelの出力は別に早くならなかった。 早くなるという意味だと、手動でシートをコピーした時に、いちいちダイアログの対応をしなくて済むので、自分で作業し …

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

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


カテゴリー