sql >> Database >  >> RDS >> Mysql

Hoe kan ik veel records sneller in MySQL invoegen, Java?

Stel je hebt je name en address in een Employee , en nu moet je veel invoegen Employee records in db, kunt u JDBC-batchbewerking gebruiken en de prestaties optimaliseren.

  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. 

U kunt de code ook eenvoudig wijzigen met behulp van array of verzameling om uw gegevens te bewaren als u geen entiteitsobject (werknemer) hebt om ze te bewaren.

U kunt batch-insert in java lezen voor meer informatie



  1. Oracle SQL Auto Generated Identity Primary Key

  2. Crypt() saltgeneratie en wachtwoordcodering, goed uitgevoerd?

  3. Flask_SQLAlchemy, MySQL, Zweedse karakters opslaan å, ä, ö?

  4. Hoe voorkom je dat er records worden aangemaakt waarbij de waarde van twee velden hetzelfde is?