Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak mogę uzyskać autoinkrementowany identyfikator, gdy wstawiam rekord do tabeli za pomocą jdbctemplate?

Sprawdź ten dokument. Możesz użyć jdbcTemplate.update jako:

EDYTUJ Dodano importy zgodnie z prośbą

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;

import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.PreparedStatementCreator;
import org.springframework.jdbc.support.GeneratedKeyHolder;
import org.springframework.jdbc.support.KeyHolder;

poniżej jest użycie kodu:

final String INSERT_SQL = "insert into my_test (name) values(?)";
final String name = "Rob";
KeyHolder keyHolder = new GeneratedKeyHolder();
jdbcTemplate.update(
    new PreparedStatementCreator() {
        public PreparedStatement createPreparedStatement(Connection connection) throws SQLException {
            PreparedStatement ps =
                connection.prepareStatement(INSERT_SQL, new String[] {"id"});
            ps.setString(1, name);
            return ps;
        }
    },
    keyHolder);
// keyHolder.getKey() now contains the generated key


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. używanie wartości null w przygotowanym oświadczeniu mysqli

  2. Jak wybrać dwie kolumny jako jedną?

  3. Jak zablokować pojedynczy rząd

  4. PHP Mysql łączy się w różnych bazach danych

  5. jak połączyć dwie kolumny w jedną z istniejącą nazwą kolumny w mysql?