sql >> Base de Datos >  >> RDS >> Mysql

¿Cómo insertar muchos registros en MySQL más rápido, Java?

Suponga que tiene su name y address en un Employee , y ahora necesita insertar muchos Employee registros en db, puede usar la operación por lotes JDBC y optimizar el rendimiento.

  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. 

También puede cambiar fácilmente el código utilizando una matriz o una colección para almacenar sus datos si no tiene un objeto de entidad (Empleado) para almacenarlos.

Puede leer inserción por lotes en java para más información