0

HSQLDB 2.2.9 と次のステートメントを取得しました。

(SELECT lower(MyCol) FROM MyTable WHERE ID = ?)  
MINUS 
(SELECT lower(MyCol) FROM MyTable WHERE ID = ?)

そして、それは私のリスで動作します。しかし、Jdbc を使用するプログラムでこれを実行すると、次の例外が発生します。

Exception in thread "main" org.springframework.dao.TransientDataAccessResourceException: PreparedStatementCallback; SQL [(SELECT lower(MyCol) FROM MyTable WHERE ID = ? )  MINUS (SELECT lower(MyCol) FROM MyTable WHERE ID_CENTER = ?)]; Column not found: MyCol; nested exception is java.sql.SQLException: Column not found: MyCol

lower() を削除すると、そのステートメントは機能しますが、ここで削除したい大文字と小文字が区別されます。

このエラーが発生する理由と修正方法を教えてください。

4

1 に答える 1

0

この例外は、HSQLDB2.2.9ではスローされません。列が見つからなかった場合、例外メッセージは次の形式になります。

user lacks privilege or object not found: MYCOL

Springデータソースの設定を確認してください。

于 2012-12-17T18:53:44.840 に答える