KONEKSI DATABASE
KONEKSI DATABASE
1. Pengantar Koneksi Database
Database merupakan salah satu bagian inti dari Sistem
Informasi yang menyimpan data untuk proses pengolahan nantinya. Agar aplikasi
bisa mengakses data dari suatu database engine,
maka diperlukan suatu mekanisme koneksi antara aplikasi dan database tersebut.
Pada bahasa pemrograman java terdapat kumpulan kelas yang digunakan khusus
untuk koneksi database. Komponen database pada java mengikuti standar SQL
(Structured Query Language), sehingga library fungsinya
dapat ditemukan dalam package java.sql.* dan javax.sql.*.
Terdapat 3 langkah utama untuk melakukan koneksi ke database :
(1)
membuat koneksi sengan server database.
(2)
Membuat perintah dan mengirimkannya ke server database.
(3)
menerima dan mengolah hasil.
Untuk
mendapatkan koneksi database, diperlukan 3 langkah, yaitu :
1. Menginstalasi driver database yang digunakan
2. menciptakan
instance object dari server
3. melakukan
registrasi koneksi ke database
Setelah
berhasil dilakukan, maka kita hanya perlu melakukan registrasi koneksi, dan
menciptakan koneksi melalui interface Connection berdasarkan URL disertai
dengan username dan password database
JDBC : Untuk
melakukan koneksi ke suatu sumber data, diperlukan database driver yang akan
menjadi jembatan antara Aplikasi dengan Database. Database driver ini bersifat
spesifik untuk setiap sumber data. Misalnya, Database Driver MySQL hanya bisa
digunakan untuk melakukan koneksi ke database MySQL, begitu juga dengan
Database Driver PostgreSQL hanya untuk PostgreSQL.
Contoh Koneksi Database
Komponen utama JDBC
§ Driver adalah
komponen untuk menangani masalah komunikasi dengan server database.
§ DriverManager adalah komponen untuk menangani objek driver.
§ Connection adalah
komponen yang menyimpan koneksi ke database.
§ Statement adalah
komponen yang menangani perintah SQL ke database.
§ ResultSet adalah
komponen yang menyimpan data hasil perintah ke database.
§ SQLException adalah
komponen untuk menangani kesalahan-kesalahan yang mungkin terjadi saat
pengolahan database.
1.
Memanggil
Driver JDBC
Untuk
menghubungkan database MySQL dengan Java, perlu dilakukan pemanggilan driver
JDBC. Driver adalah sebuah library yang berisi perintah-perintah untuk
berkomunikasi dengan server database. Sebelum mulai menulis program, import
terlebih dahulu package java.sql.*. karena
di dalam library ini terdapat kelas-kelas seperti DriverManager, Connection,
dan ResultSet.
a. Resulset (import java.sql.ResultSet)
Fungsi
resultset disini akan digunakan saat kita menggunakan statement select ke
database, lebih jelasnya resultset adalah pengontrol letak kursor terhadap
suatu baris didalam database, sehingga apa yg kita pilih / select dari
java, akan sesuai dengan data baris yg ada pada database. Fungsi resultset ini
biasa digunakan saat kita ingin menampilkan/memilih data dari database ke java.
b. Statement (import java.sql.Statement;)
Dalam
penggunaan sebuah database untuk membuat sebuah aplikasi java, tentu kita akan
banyak bertemu dengan kode “insert into namatable values”, “select * from
barang”, dan masih banyak lagi, sebenarnya kode tersebut adalah bahasa SQL,
mengapa bahasa SQL tersebut bisa adalah didalam kodingan bahasa java.?,
disini lah peran statement akan berfungsi, dimana statementlah yg membaca bahwa
kode tersebut adalah bahasa SQL dan mengantarkan bahasa tersebut ke dalam
database, sehingga perintah SQL yg telah kita ketikan akan terbaca dan
dioperasikan oleh database sehingga peritah eksekusinya akan muncul pada java.
Untuk itu kita akan memerlukan fungsi ini setiap kali melakukan pemrograman
pengolahan data yg berhubungan dengan database.
Cara
melakukan komunikasi dengan database adalah :
1.
Memanggil
driver JDBC
2.
Membangun
koneksi
3.
Membuat
objek statement
4.
Melakukan
eksekusi
5.
Menerima
hasil pemrosesan
6.
Membuat
report
7.
Memanggil
driver JDBC
Untuk
menghubungkan database MySQL dengan Java, perlu dilakukan pemanggilan driver
JDBC. Driver adalah sebuah library yang berisi perintah-perintah untuk
berkomunikasi dengan server database. Sebelum mulai menulis program, import
terlebih dahulu package java.sql.*. karena
di dalam library ini terdapat kelas-kelas seperti DriverManager, Connection,
dan ResultSet.
import
java.sql.*
Untuk
memanggil driver JDBC bisa menggunakan
Class.forName(namaDriver);
atau
Class.forName(namaDriver).newInstance();
0020Keduanya
bertujuan untuk registrasi Class Driver. Perintah tersebut dapat menghasilkan
error bila driver tidak ditemukan, sehingga perlu dilakukan penanganan, menggunakan
ClassNotFoundException.
try
{
//
perintah pemanggilan driver
}
catch (ClassNotFoundException exc) {
//
penanganan kesalahan
}
2.
Membangun
koneksi
Setelah
berhasil melakukan pemanggilan driver, maka dilanjutkan dengan membangun
koneksi. Untuk membuat koneksi tidak perlu dengan menciptakan object baru.
Karena pembuatan object telah dienkapsulasi pada kelas DriverManager. Jadi,
untuk mendapatkan object hanya dengan syntax :
DriverManager.getConnection(url,
username, password);
Sama
seperti pemanggilan driver, perintah kali ini dapat menyebabkan error. Untuk
itu, diperlukan penanganan. Namun, kali ini menggunakan SQLException, karena
kesalahan yang mungkin terjadi ada di dalam database engine.
try
{
Connection
conn = DriverManager.getConnection(URL, username, password);
}
catch (SQLException exc) {
//
penanganan kesalahan
}
URL
bisa dibuat dengan format :
Jdbc:<DBServer>://[host]:[port]/<NamaDB>
3.
Membuat
objek statement
Statement
merupakan objek interface yang diciptakan dari method Connection.createStatement().
Objek Statement digunakan untuk penerimaan statement SQL tanpa parameter.
Perintah
Statement :
Statement
stat = Connection.createStatement();
4.
Melakukan
eksekusi
Sekarang,
objek statement telah dibuat dan sudah bisa digunakan untuk mengirim perintah
SQL, kemudian mengeksekusinya. Untuk melakukan eksekusi, dibagi menjadi 2
bagian.
Pertama,
menggunakan method executeQuery(). Method ini dipakai untuk perintah SELECT,
sehingga akan memberikan nilai kembalian dalam bentuk ResultSet.
Kedua,
menggunakan method executeUpdate(). Method ini dipakai pada perintah INSERT,
UPDATE, dan DELETE. Untuk melakukan perintah DELETE :
PreparedStatement
stat = conn.prepareStatement(perintah/query delete);
stat.executeUpdate();
5.
Menerima
hasil pemrosesan
Hasil
statement akan memberikan hasil, jikaperintah yang digunakan adalah SELECT.
Hasil kembalian berupa ResultSet.
ResultSet
rs = stat.executeQuery(perintah SQL);
If(
rs.next() ) {
//
ambil nilai dan masukan ke dalam variabel
}
Comments
Post a Comment