Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Como inserir muitos registros no MySQL mais rápido, Java?


Suponha que você tenha seu name e address em um Employee , e agora você precisa inserir muitos Employee registros em db, você pode usar a operação em lote JDBC e otimizar o desempenho.
  PreparedStatement ps = con.prepareStatement("INSERT INTO registration_table(name,address) VALUES (?, ?)");   

  for(Employee employee: employees){
      ps.setString(1,employee.getName());
      ps.setString(2,employee.getAddress());
      ps.addBatch();// add to batch
      ps.clearParameters();
  }

  int[] results = ps.executeBatch();// execute with batch rather than execute many SQL separately. 

Você também pode alterar facilmente o código usando array ou coleção para armazenar seus dados se não tiver um objeto de entidade (Employee) para mantê-los.

Você pode ler inserção de lote em java Para maiores informações