Insert Data Dengan ResultSet


Biasanya ResultSet digunakan untuk meload data hasil query, tapi tahukan bahwa ResultSet juga dapat digunakan untuk menambah data ke dalam database, sehingga kita tidak perlu lagi menggunakan perintah INSERT INTO BLA BLA BLA

Connection connection = DatabaseUtilities.createConnection();

Statement statement = connection.createStatement(
ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE);

ResultSet resultSet = statement.executeQuery("SELECT * FROM mahasiswa");

Saat createStatement diatas, kita menggunakan parameter ResultSet.TYPE_SCROLL_INSENSITIVE dan ResultSet.CONCUR_UPDATEABLE, TYPE_SCROLL_INSENSITIVE artinya bahwa result set yang akan kita buat tidak sensitive terhadap perubahan yang terjadi pada result set, sedangkan CONCUR_UPDATEABLE artinya bahwa result set yang kita buat dapat melakukan proses pengubahan data (dimana disini kita akan melakukan penambahan data).

resultSet.moveToInsertRow();
resultSet.updateString("nim", "10106033");
resultSet.updateString("nama_depan", "Eko Kurniawan");
resultSet.updateString("nama_belakang", "Khannedy");
resultSet.updateDate("tanggal_lahir",
new Date(System.currentTimeMillis()));
resultSet.insertRow();

Untuk menambah data sebuah baris, maka kita menggunakan metode moveToInsertRow() milik ResultSet. Setelah itu maka kita perlu menambahkan data-data tiap kolomnya, dimana pada kode diatas saya menambahkan data kolom nim, nama_depan, nama_belakang dan tanggal_lahir.

Jika proses penambahan data tiap kolomnya telah selesai, maka untuk menyimpan perubahan kita perlu memanggil mettode insertRow(). Dan setelah itu, otomatis data yang kita tambahkan akan masuk ke database tanpa menggunakan perintah INSERT INTO BLA BLA BLA

Full code :

Connection connection = DatabaseUtilities.createConnection();

Statement statement = connection.createStatement(
ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE);

ResultSet resultSet = statement.executeQuery("SELECT * FROM mahasiswa");

resultSet.moveToInsertRow();
resultSet.updateString("nim", "10106033");
resultSet.updateString("nama_depan", "Eko Kurniawan");
resultSet.updateString("nama_belakang", "Khannedy");
resultSet.updateDate("tanggal_lahir",
new Date(System.currentTimeMillis()));
resultSet.insertRow();

resultSet.close();
statement.close();
connection.close();
Iklan

9 pemikiran pada “Insert Data Dengan ResultSet

  1. Salam kenal, Mas.

    Saya mau tanya tentang resultset. Dapatkah kita mencari data di resultset seperti FIND or SEARCH. Terima kasih sebelumnya.

  2. Ma’af mas Eko, maksud saya bukan membaca resultset secara berurutan kemudian mambandingkan dengan kunci pencarian. Saya pernah membaca tentang SearchRow, cuma pada saat itu belum merasa butuh. Sekarang saya merasa ada kebutuhan untuk itu. Mohon pencerahannya. Terima kasih.

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s