sql >> Database teknologi >  >> RDS >> Oracle

PreparedStatement eksekverer med succes i Oracle, men kaster undtagelse i Microsoft SQL

Svaret er i meddelelsen - ExecuteQuery kræver et resultatsæt. Brug executeUpdate i stedet.

Fra ovenstående link:

  • boolesk execute() Udfører SQL-sætningen i dette PreparedStatement-objekt, som kan være enhver form for SQL-sætning.

  • ResultSet executeQuery() Udfører SQL-forespørgslen i dette PreparedStatement-objekt og returnerer ResultSet-objektet, der er genereret af forespørgslen.

  • int executeUpdate() Udfører SQL-sætningen i dette PreparedStatement-objekt, som skal være en SQL INSERT-, UPDATE- eller DELETE-sætning; eller en SQL-sætning, der ikke returnerer noget, såsom en DDL-sætning.

det faktum, at det virker på Oracle, er sandsynligvis bare en bivirkning, som du har opdaget, du ikke kan stole på.



  1. Oracle - update join - ikke nøglebevaret tabel

  2. Sådan automatiseres udrulning af PostgreSQL-database

  3. 4 måder at få en liste over tidsplaner i SQL Server Agent (T-SQL)

  4. Hibernate 4 og Postgres:Hvordan opretter man en sekvens pr. tabel?