答えはメッセージにあります-ExecuteQueryには結果セットが必要です。 executeUpdate を使用します 代わりに。
上記のリンクから:
-
boolean execute() このPreparedStatementオブジェクトでSQLステートメントを実行します。これは任意の種類のSQLステートメントです。
-
ResultSet executeQuery() このPreparedStatementオブジェクトでSQLクエリを実行し、クエリによって生成されたResultSetオブジェクトを返します。
-
int executeUpdate() このPreparedStatementオブジェクトでSQLステートメントを実行します。これはSQLINSERT、UPDATE、またはDELETEステートメントである必要があります。または、DDLステートメントなどの何も返さないSQLステートメント。
それがオラクルで機能するという事実は、おそらくあなたが発見した単なる副作用であり、信頼することはできません。