Bonjour,

J'essaye de faire un insert avec un preparedStatement et de récupérer les clés générées.

La faq ici explique comment faire avec un statement normal, ce qui donnerait
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
PreparedStatement prep = conn.prepareStatement("Insert into entry values (?,?)");
prep.setString(1,"A"); prep.setString(2,"B");
prep.executeUpdate(????,Statement.RETURN_GENERATED_KEYS);
//Les clefs auto-générées sont retournées sous forme de ResultSet
ResultSet clefs = prep.getGeneratedKeys();
mais ça n'a pas de sens avec un preparedStatement, car qu'est-ce que mets comme SQL ?
J'ai essayé le prep.getGeneratedKeys() sans le Statement.RETURN_GENERATED_KEYS, mais ça donne une erreur.

J'ai aussi essayé
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
PreparedStatement prep = conn.prepareStatement(
     "Insert into entry values (?,?); Call identity()");
prep.executeExecute();
mais ça me retourne une SQLException sur le prepareStatement.

Une idée ?