Rumah >pangkalan data >tutorial mysql >Bagaimanakah PreparedStatement Boleh Meningkatkan Sisipan Berbilang Baris dalam MySQL?
Mengoptimumkan Sisipan Berbilang Baris dengan PreparedStatement
Pada mulanya, memasukkan baris ke dalam jadual MySQL menggunakan gelung dan panggilan PreparedStatment individu adalah amalan biasa . Walau bagaimanapun, untuk meningkatkan prestasi, menggunakan sintaks yang disokong MySQL untuk sisipan berbilang baris adalah wajar.
Mengumpulkan dengan PreparedStatement
A PreparedStatement menawarkan penyelesaian untuk berbilang-bilangan yang dioptimumkan sisipan baris melalui batching. Dengan menggunakan kaedah PreparedStatement#addBatch(), berbilang pernyataan SQL terkumpul dalam satu kelompok. Pernyataan ini kemudiannya dilaksanakan secara serentak melalui PreparedStatement#executeBatch().
Kod sampel berikut menunjukkan pendekatan ini:
public void save(List<Entity> entities) throws SQLException { try ( Connection connection = database.getConnection(); PreparedStatement statement = connection.prepareStatement(SQL_INSERT); ) { int i = 0; for (Entity entity : entities) { statement.setString(1, entity.getSomeProperty()); // ... statement.addBatch(); i++; if (i % 1000 == 0 || i == entities.size()) { statement.executeBatch(); // Execute every 1000 items. } } } }
Sumber Tambahan
Untuk butiran lanjut mengenai teknik ini, rujuk perkara berikut sumber:
Atas ialah kandungan terperinci Bagaimanakah PreparedStatement Boleh Meningkatkan Sisipan Berbilang Baris dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!