Oracle
 sql >> Datenbank >  >> RDS >> Oracle

PreparedStatement wird erfolgreich in Oracle ausgeführt, löst jedoch eine Ausnahme in Microsoft SQL aus

Die Antwort ist in der Nachricht - ExecuteQuery erfordert eine Ergebnismenge. Verwenden Sie executeUpdate stattdessen.

Von obigem Link:

  • boolean execute() Führt die SQL-Anweisung in diesem PreparedStatement-Objekt aus, die jede Art von SQL-Anweisung sein kann.

  • ResultSet executeQuery() Führt die SQL-Abfrage in diesem PreparedStatement-Objekt aus und gibt das von der Abfrage generierte ResultSet-Objekt zurück.

  • int executeUpdate() Führt die SQL-Anweisung in diesem PreparedStatement-Objekt aus, die eine SQL INSERT-, UPDATE- oder DELETE-Anweisung sein muss; oder eine SQL-Anweisung, die nichts zurückgibt, wie z. B. eine DDL-Anweisung.

Die Tatsache, dass es auf Oracle funktioniert, ist wahrscheinlich nur ein Nebeneffekt, auf den Sie sich nicht verlassen können.