Jumat, 21 September 2012

Batch Execution

Misalnya kita ingin meng-insert seratus baris data dalam sebuah loop, kita bisa menggunakan fasilitas batc execution dari PreparedStatement. batch execution mengumpulkan semua eksekusi program yang akan dilaksanakan, setelah semuanya terkumpul batch execution kemudian mengirimkan kumpulan eksekusi program secara bersamaan ke DBMS dalam satu kesatuan. Metode ini sangat efisien karena mengurangi overhead yang diperlukan program untuk berkomunikasi dengan DBMS.
 
Dalam contoh di bawah ini kita akan menggunakan batch execution untuk melakukan insert data sebanyak seratus kali.

PreparedStatement pInsert = conn.prepareStatement(
"insert into Person(nama) values(?)");
for(int i=0;i<100;i++){
pInsert.setString(1,"user ke " + i);
pInsert.addBatch();
}
pInsert.executeBatch();

Setiap kali iterasi, method setString dipanggil untuk mengisikan sebuah string ke dalam PreparedStatement, kemudian method addBatch dipanggil untuk mengumpulkan batch dalam satu wadah. Setelah iterasi selesai, method executeBatch dipanggil untuk melaksanakan semua keseratus instruksi insert secara berurut dengan sekali saja melaksanakan koneksi ke database.

Tidak ada komentar:

Posting Komentar