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å.