Deje la columna fuera de INSERT
declaración totalmente . Será generado por el motor de la base de datos. Su consulta debe ser:
INSERT INTO employee (time, name)
VALUES (?, ?)
En segundo lugar, primero debe realizar la inserción y luego obtener las claves del resultado.
Creo que tu código debería ser:
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);
Tenga en cuenta que este ejemplo no comprueba el éxito de la instrucción ejecutada ni la existencia de claves devueltas.