shigezoの日記: 非公開の文です。
仕事で某証券会社のWEBトレーディングのシステムのServletを
開発している時の出来事。もちろんDBはOracleでJDBC接続。
ちょっと小難しいSQL文を投げたらこんな例外がスローされた。
java.sql.SQLException: 非公開の文です。
???なんだ~他の所でもっと複雑なSQL投げていても問題無いのに・・
試しに投げているSQLをコンソールに表示して切り張りしてSQL*PLUSから
投げてみる。まったく問題無い・・・???
SQLをもっと簡単にしてみて再度実行。またエラー・・・
あっれ~なんなんだ???
よーくソースを見返してみたらそのSQLを投げるロジックの時だけ少し手前で
SQLを投げている・・よーく見ると最後に stmt.close()・・・
そぅです。えぇえぇ良く見ていなかった私がいけないんですよ。ハイ。
それにしてもOracleもっと解りやすいエラーメッセージにしてくれよ~(泣)
これ思うに「非公開=CLOSEされている」「文=Statement」って事かい!?
余計な翻訳しなくて良いから statemente closedで良いじゃんか~!
オラクルってマニュアルやらGUIやら見ても言葉難しくしすぎだと前から
思っているけど皆はどうなんだろ?、最近大夫GUIは改善されてきてはいるけど・・
そういう点では(だけとも言う)MSってうまいよな~SQLServerとか
ろくにマニュアル読まなくても適当に使えちゃうしね。
もちろん使い込むとボロボロなのは言うまでも無いし
DBMS使う技術者にはそれ相応の知識や技術が必要なのは十分理解できるけどね
何にしてもこの訳解らない翻訳エラーメッセージのせいで1時間以上
悩んでしまった・・・未熟。