com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException :Vous avez une erreur dans votre syntaxe SQL ; consultez le manuel correspondant à la version de votre serveur MySQL pour connaître la bonne syntaxe à utiliser près de '? , ? , DEFAULT , NULL )' à la ligne 1
Ces espaces réservés ?
ne devrait pas du tout apparaître du côté MySQL.
Regardez ici,
sInserim.executeUpdate(sqlCommandInserim);
vous passez la chaîne SQL brute dans executeUpdate()
au lieu d'exécuter le PreparedStatement
avec les valeurs définies.
Remplacez-le par
sInserim.executeUpdate();
Le executeUpdate(sqlString)
doit être utilisé sur Statement
uniquement.
Non lié au problème concret, vous devriez fermer le PreparedStatement
dans le finally
bloquer pour éviter les fuites de ressources en cas d'exceptions. Il en va de même pour Connection
, Statement
et ResultSet
au fait.