sql >> Database >  >> RDS >> Mysql

JDBC retourneert MySQLSyntaxError Exception met de juiste instructie

com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:u heeft een fout in uw SQL-syntaxis; controleer de handleiding die overeenkomt met uw MySQL-serverversie voor de juiste syntaxis om te gebruiken in de buurt van '? , ? , DEFAULT , NULL )' op regel 1

Die tijdelijke aanduidingen ? zou helemaal niet in de MySQL-kant moeten verschijnen.

Kijk hier,

sInserim.executeUpdate(sqlCommandInserim);

je geeft de onbewerkte SQL-string door aan executeUpdate() in plaats van het uitvoeren van de PreparedStatement met de ingestelde waarden.

Vervang het door

sInserim.executeUpdate();

De executeUpdate(sqlString) moet worden gebruikt op Statement alleen.

Niet gerelateerd voor het concrete probleem, zou u de PreparedStatement . moeten sluiten in de finally blok om te voorkomen dat bronnen lekken in geval van uitzonderingen. Hetzelfde geldt voor Connection , Statement en ResultSet trouwens.




  1. Hoe alle items in de cache in Oracle te wissen

  2. JDBC Create Table Voorbeeld Gebruiksverklaring

  3. UPDATE-instructie in Oracle met SQL of PL/SQL om ALLEEN de eerste dubbele rij bij te werken

  4. Opgeslagen procedure uitvoeren in SQL Developer?