Perbedaan Object Statement, PreparedStatement, ResultSet

hahah berhubung ane masih nunggu panggilan kerja… selain bisnis kecil – kecilan…. yah sambil mengasaj ingatan lagi. ¬†.. lah… jadi ngelantur kemana tau.. :p)….. langsung menuju pada subtansi… hahah…. pada saat kita mengakses database menggunakan JDBC kita sering menggunakan object Statement, PreparedStatement, dan ResultSet…. namun kita mungkin belum memahami perbedaan dari tiap – tiap object tersebut…. dengan memahami object2 diatas.. maka kita akan mengetahui kapa kita harus menggunakan Statement, PreparedStatement, dan ResultSet….?¬†

  • Statement

Object Statement digunakan untuk memanipulasi database yang menggunakan query statis…. Query statis…? berarti ada Query dinamis donk… ya betul…. tapi sekarang kita bahas query statis dulu…. Query Statis adalah query yang tidak mengandung parameter didalamnya…

contohnya seperti query dibawah ini :

select * from tb_user;

query diatas adalah query statis yaitu query yang nilainya selalu tetap…tidak ada parameter yang dimasukkan kedalam query tersebut…

  • PreparedStatement

PreparedStatement digunakan untuk manipulasi database yang menggunakan query – query dinamis… kebalikan dari Statement yang menggunakan query statis… query dinamis adalah query SQL yang memiliki parameter… parameter ini adalah nilai yang dimasukkan atau dikirimkan kepada database pada saat query tersebut di eksekusi… pada Java parameter di representasikan dengan tanda tanya “?” jadi untuk mengidentifikasi secara mudah query dinamis adalah query yang ada tanda tanya..nya…. contoh seperti di bawah ini :

String SQL_insert = "insert into tb_user values (?, ?, ?, ?, ?)";

nah untuk memasukkan nilai nilai pada parameter tersebut kita menggunakan method setString(); seperti contoh dibawah ini :

ps = koneksi.prepareStatement(SQL_insert);
                ps.setString(1, username);
                ps.setString(2, password);
                ps.setString(3, nama);
                ps.setString(4, alamat);
                ps.setString(5, telp);

                ps.executeUpdate();

jumlah angka yang dimasukkan harus sesuai dengan jumlah tanda tanya yang ada di query………

  • ResultSet

Object ResultSet digunakan untuk menampung hasil eksekusi dari database… namun perlu diketahui… hasil eksekusi dari database sebenarnya disimpan perbaris… tidak keseluruhan secara langsung…. oleh karena itu biasanya object result set ini di looping menggunakan while…. ¬†berikut ini contoh penerapan object ResultSet .. :

statement = koneksi.createStatement();
        rs = statement.executeQuery(SQL_Select);
        while(rs.next()){
            String username = rs.getString(1);
            String password = rs.getString(2);
            String nama = rs.getString(3);
            String alamat = rs.getString(4);
            String telp = rs.getString(5);

            String[]data = {
               username, password, nama, alamat, telp
            };
            model.addRow(data);
            i++;
        }

memang biasanya object ResultSet ini digunakan pada query select karena query select memungkinkan hasilnya lebih satu baris….

4 thoughts on “Perbedaan Object Statement, PreparedStatement, ResultSet

  1. saya mau nanya kalo biar syarat where di fungsi select sql biar dinamis gimana ya. soalnya di sistem saya ada combobox tahun ajaran. nah itu di pilih dulu untuk jadi syarat tampilan juga. misal saya pilih 2011/2012 maka syarat jadi tahun ajaran = 2011/2012 . mohon pencerahanya ya kaka. kirim bales aja ke email duduk5kali@gmail.com

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>