Class JavaSQl
Class JavaSQl
Menggunakan JDBC
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.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");
}
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”);
}
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");
}
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();
}
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