0% menganggap dokumen ini bermanfaat (0 suara)
7 tayangan

Class JavaSQl

Diunggah oleh

fiqih.fahroni05
Hak Cipta
© © All Rights Reserved
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
7 tayangan

Class JavaSQl

Diunggah oleh

fiqih.fahroni05
Hak Cipta
© © All Rights Reserved
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 5

Akses Database

Menggunakan JDBC

Dalam bab ini kita akan membicarakan tentang akses database


menggunakan JDBC, cara penggunannya mulai dari membuka
koneksi sampai melakukan operasi baca, tulis, dan hapus data dari
database. Bahkan menggunakan interface dari yang sederhana
sampai yang kompleks.
Design sederhana bertujuan untuk memudahkan pemahaman, se-
dangkan design interface yang kompleks agar bisa menampilkan
data dalam bentuk yang lebih menarik dan bisa seperti pada aplikasi
yang profesional.
Pemahaman JDBC ini adalah mutlak diperlukan bagi seorang
programmer database, jika ingin bekerja dengan Java. Sebagai
gambaran saja, jika programmer membuat aplikasi database dengan
semisal visual basic/PHP dengan database SQL Server atau MySQL,
apakah program tersebut bisa diganti databasenya dengan yang lain
semisal Postgree atau Oracle. Dalam hal ini JDBC mampu membuat
aplikasi bisa berjalan di atas semua sistem database, hanya cukup
dengan memasang driver JDBC dari database tersebut.

197
7.1 Mengenal JDBC
JDBC adalah sebuah nama dari sebuah produk yang ada dalam
Java, atau yang dikenal sebagian orang sebagai Java Database
Connectivity, seperti dokumentasi yang dikeluarkan oleh Sun
Microsystem sendiri dalam situs resminya. Sebenarnya lengkapnya
adalah JDBC API yaitu Application Programming Interface, yang
menyediakan akses data secara universal dan independent. Bekerja
dengan JDBC secara umum adalah sebagai berikut:
ƒ Me-load JDBC Driver ke dalam JVM.
ƒ Membuat koneksi ke database yang direpresentasikan sebagai
objek java.sql.Connection.
ƒ Membuat objek java.sql.Statement yang akan digunakan untuk
mengirimkan perintah SQL ke database.
ƒ Menjalankan metode yang bersesuaian dari objek
java.sql.Statement, seperti executeQuery() untuk membaca
atau executeUpdate() untuk menulis ke tabel.

7.2 Kelas untuk Mengakses Database


Java menyiapkan paket khusus untuk menyimpan kelas-kelas yang
terlibat dalam operasi akses database, yaitu dalam paket java.sql.
Seperti yang Anda ketahui sebelumnya bahwa perlu ada beberapa
tahapan agar bisa melakukan operasi ke dalam database, antara lain
pengenalan dirver, pembuatan koneksi/hubungan, statement/
perintah SQL baru, kemudian operasi baca dengan excecuteQuery
ataupun operasi tulis dengan executeUpdate(). Setiap tahap dan
pekerjaan yang berbeda-beda tersebut dilakukan oleh kelas yang
berbeda, mulai dari DriverManager, Connection, Statement,
PreparedStatement, Resulset.

7.2.1 DriverManager
DriverManager adalah kelas untuk manajemen driver, seperti yang
Anda ketahui bahwa untuk bisa mengakses database diperlukan
sebuah driver JDBC. Untuk itu file driver tersebut harus ada, dan

198
terpasang dalam kelas path dalam program kerjanya. Untuk
memastikan sebuah driver sudah terpasang atau belum, bisa
digunakan objek Class untuk mengidentifikasinya, seperti berikut.
try {
Class.forName("com.mysql.jdbc.Driver");
System.out.println("jdbc.Driver : OK");
}
catch(ClassNotFoundException e) {
System.out.println("Kelas: jdbc.Driver tidak ada");
}

Jika program tersebut dijalankan, akan menghasilkan pesan


“jdbc.Driver : OK”, bila dalam project Anda sudah terpasang
classpath untuk driver MySQL. Akan tetapi, program akan
menampilkan pesan “Kelas: jdbc.Driver tidak ada” bila direktori
kerja Anda tidak mengenali path dari Driver tersebut, walaupun
dalam komputer Anda sudah ada filenya, ataupun dalam editor
sudah terpasang dalam lingkungan library.
Dalam aplikasinya, Anda tidak mesti memberikan operasi penge-
cekan driver ini, karena hanya untuk melakukan trace jika terjadi
kesalahan, agar diketahui penyebabnya saja.
Objek DriverManager ini bisa menghasilkan sebuah koneksi melalui
metode getConnction(), dengan menyertakan URL sebagai para-
meternya. Adapun penulisannya menggunakan titik dua (:), seperti
contoh:
jdbc:mysql://localhost/db_akademik?user=root&password=admin

Berikut ini penjelasannya.


ƒ jdbc:mysql adalah nama drivernya.
ƒ localhost adalah nama hostname (komputer address).
ƒ db_akademik adalah nama databasenya.
ƒ root adalah nama account user MySQL.
ƒ admin adalah password dari account MySQL tersebut.

199
7.2.2 Connection
Kelas Connection adalah kelas yang menyimpan sebuah koneksi
atau hubungan yang telah dilakukan oleh DriverManager. Untuk
selanjutnya kelas ini sendiri bisa dipakai untuk menentukan jenis
operasi baca atau operasi tulis pada tabel. Seperti contoh potongan
program berikut.
.....
try {
Connection conn=DriverManager.getConnection(
“jdbc:mysql://localhost/db_akademik?” +
“user=root&password=admin”);
}

Instance conn tersebut menyimpan sebuah koneksi ke database


“db_akademik”, dengan komputer localhost (komputer lokal).

7.2.3 Statement
Kelas ini digunakan untuk mengirimkan statement SQL ke database,
tanpa penggunaan parameter. Seperti contoh berikut:
try {
Connection conn=DriverManager.getConnection(
“jdbc:mysql://localhost/db_akademik?” +
“user=root&password=admin”);
Statement st = conn.createStatement();
ResultSet rs = st.executeQuery("Select * from user");
}

Instance st tersebut membuat sebuah statement baca, yaitu “Select


* from user”, melalui metode executeQuery yang dimilikinya.
Selain itu, Statement tersebut juga bisa melakukan operasi baca
dengan metode executeUpdate() yang juga dimiliki oleh kelas ini.

7.2.4 PreparedStatement
Kelas ini digunakan untuk mengirimkan statement SQL ke database,
yang disertai dengan penggunaan parameter, seperti contoh:
PreparedStatement pStatement = null;
try {
Connection conn=DriverManager.getConnection(

200
“jdbc:mysql://localhost/db_akademik?” +
“user=root&password=admin”);
pStatement = conn.prepareStatement(
“insert into user (user_id, password, jabatan)”+
“Values (?,?,?)”);
pStatement.setString(1, “huda”);
pStatement.setString(2, “123”);
pStatement.setString(3, “Kepala Unit SDM”);
pStatement.executeUpdate();
}

Instance pStatement tersebut membuat sebuah statement tulis, yaitu


“insert into user (user_id, password, jabatan)”, dan
dijalankan melalui metode executeUpdate() yang dimiliki oleh kelas
ini.
Perhatikan metode setString([nomor kolom], [isi dari
parameter]) nomor kolom dimulai dari 1, sehingga contoh di atas
dapat disimpulkan user_id=”huda”, password=”123”,
jabatan=”Kepala Unit SDM”.

7.2.5 ResultSet
Kelas yang menyimpan dataset (sekumpulan data) dari hasil
statement query “SELECT”. Seperti contoh berikut ini.
try {
Connection conn=DriverManager.getConnection(
“jdbc:mysql://localhost/db_akademik?” +
“user=root&password=admin”);
Statement st = conn.createStatement();
ResultSet rs = st.executeQuery("Select * from user");
while (rs.next()) {
System.out.println("User ID :"+
rs.getString("user_id"));
}
}

Instance rs, akan menyimpan hasil query yang bisa diakses dengan
cara memanggil metode getter untuk setiap jenis datanya. Misalnya
getString() adalah untuk mendapat nilai string, diikuti nama fieldnya.
Sedangkan untuk membaca record berikutnya bisa dilakukan
dengan metode next().

201

Anda mungkin juga menyukai