Olá.
Estava fazendo alguns testes de conexão com banco de dados em Java e MySQL e quando tento pegar os ultimos IDs inseridos eu só consigo utilizar o resultSet.getInt(1)
ao invés de resultSet.getInt("id")
. Pesquisei em outros forums e o que encontrei é que isso seria um "bug" do próprio MySQL com JDBC. Alguém sabe me dizer se isso procede?
Segue código abaixo:
Connection connection = Database.getConnection();
Statement statement = connection.createStatement();
Timestamp date = new Timestamp(new Date().getTime());
String SQL = "INSERT INTO `users` VALUES(NULL, 'User', 'user@user.com.br', '123', '" + date + "', NULL, NULL)";
statement.execute(SQL, Statement.RETURN_GENERATED_KEYS);
ResultSet resultSet = statement.getGeneratedKeys();
resultSet.next();
Integer id = resultSet.getInt("id");
System.out.println(id);
resultSet.close();
statement.close();
connection.close();