Lascia la colonna fuori da INSERT
dichiarazione interamente . Sarà generato dal motore di database. La tua domanda dovrebbe essere:
INSERT INTO employee (time, name)
VALUES (?, ?)
In secondo luogo, devi prima eseguire l'inserimento, quindi estrarre le chiavi dal risultato.
Credo che il tuo codice dovrebbe essere:
PreparedStatement preparedStatement =
connect.prepareStatement("INSERT into employee (time, name) VALUES (?,?)",
Statement.RETURN_GENERATED_KEYS);
preparedStatement.setTimestamp(1,
new java.sql.Timestamp(new java.util.Date().getTime()));
preparedStatement.setString(2, "Test");
preparedStatement.executeUpdate();
ResultSet tableKeys = preparedStatement.getGeneratedKeys();
tableKeys.next();
int autoGeneratedID = tableKeys.getInt(1);
Si noti che questo esempio non verifica il successo dell'istruzione eseguita o l'esistenza delle chiavi restituite.