0

私はオラクル機能を持​​っています。関数名は TESTFUNCTION です。私が使用したコードは

PreparedStatement pStmt = con.prepareStatement("SELECT dbo.TESTFUNCTION(?,?)") ;

パラメータも設定しました。

ResultSet rs = pStmt.executeQuery();

このコードは以下の例外を生成します

java.sql.SQLSyntaxErrorException: ORA-00923: FROM keyword not found where expected

どんな助けでも!!

4

3 に答える 3

0

PreparedStatementは、SQLクエリには役立ちますが、関数呼び出しには役立ちません。関数呼び出しとストアドプロシージャの場合は、CallableStatementを使用します。

于 2012-08-31T07:14:16.470 に答える
0

このエラーは、SELECT ステートメントを実行しようとして、FROM キーワードを見落としたか、場所を間違えた場合に発生します。from キーワードを確認してみてください。

詳細はこちらをご確認ください。

注: このような場合は、準備済みステートメントの代わりにCallable ステートメントを使用することをお勧めします。

この場合、呼び出し可能なステートメントを次のように使用できます。

String SQL = "{call dbo.TESTFUNCTION(?,?)}";
   cstmt = con.prepareCall (SQL);
于 2012-08-31T07:11:31.413 に答える