JDBC dan MySQL dengan NetBeans [1]

Posted on
image

java.sql.Connection

sebelum kita mengelola database pada MySQL kita perlu membuat terlebih dahulu sebuah koneksi yang dalam java dekenal dengan java.sql.Connection.  tapi sebelumnya kita harus menentukan sebuah driver setiap DBMS yang akan kita gunakan. karena kita menggunakan DBMS MySQL, maka kita harus membuat instansiasi dari Driver milik MySQL. dan masalahnya, java tidak menyediakan driver untuk MySQL, sehingga kita harus mendownload driver MySQL dari situs resmi MySQL. tapi tenang saja, karena kita pake Netbeans, semuanya telah tersedia, 
untuk memasukkan sebuah library untuk drriver MySQL pada netbeans gampang saj. caranya klik kanan pada library milik project yang akan kita gunakan lalu pilih add library :

setelah itu cari library MySQL JDBC Driver lalu klik tombol add library :
image
sekarang bisa dilihat kalo MySQL JDBC Driver telah ada di library project yang akan kita buat :
image
setelah itu buat sebuah class untuk koneksi (jika anda belum tahu cara membuat koneksi, silahkan lihat kembali tutorial MySQL dan Netbeans bagian 1) :
import com.mysql.jdbc.Driver;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class Koneksi {

private static Connection koneksi;

public static Connection getConnection() throws SQLException {
if (koneksi == null) {
// panggil Driver MySQL
new Driver();
// buat koneksi
koneksi = DriverManager.getConnection("jdbc:mysql://localhost:3306/netbeans", "username", "password");
}
return koneksi;
}

public static void main(String args[]) {
try {
getConnection();
System.out.println("Koneksi Berhasil");
} catch (SQLException ex) {
System.err.println("Koneksi Gagal");
}
}
}
 
setelah itu coba running, jika berhasil maka akan mengeluarkan tulisan “Koneksi Berhasil”, jika gagal, maka akan keluar tulisan “Koneksi Gagal”. nach sekarang saya akan anggap koneksi berhasil. kalo gagal, pasti ada yang salah dengan yang anda ketikkan, ulangi lagi sampai berhasil….

java.sql.Statement

nah sekarang kita akan masuk ke proses INSERT, UPDATE, DELETE pada database. caranya kita harus membuat sebuah Statement, lalu dengan statement tersebut kita bisa membuat proses eksekusi INSERT, UPDATE, dan DELETE. namun tak bisa mengeksekusi proses SELECT karena proses tersebut mengembalikan nilai, makanya nanti kita akan bahas prose SELECT di subbab selanjutnya.
untuk membuat Statement, kita cukup memanggil metode createStatement() milik Connection. ini contohnya :
Connection koneksi = ....
Statement statement = koneksi.createStatement();</code>
sedangkan untuk melakukan proses eksekusi instruksi SQL, kita gunakan metode executeUpdate(“PERINTAH SQL”) milik Statement, contohnya kita akan mencoba membuat Statement untuk eksekusi perintah INSERT :
import java.sql.SQLException;
import java.sql.Statement;

public class InsertRecord {

public static void main(String args[]) throws SQLException {
Statement statement = Koneksi.getConnection().createStatement();
statement.executeUpdate("INSERT INTO MAHASISWA " +
"VALUES (" +
"'10106031','Eko Kurnaiwan Khannedy','1988-12-29'" +
");");

statement.close();
}
}
setelah di eksekusi, maka ini hasilnya :
image
sekarang kita coba melakukan proses UPDATE :
import java.sql.SQLException;
import java.sql.Statement;

public class UpdateRecord {

public static void main(String args[]) throws SQLException {
Statement statement = Koneksi.getConnection().createStatement();
statement.executeUpdate("UPDATE MAHASISWA " +
"SET " +
"NAMA = 'Nesia Oktiana' ," +
"TANGGAL_LAHIR = '1988-10-04' " +
"WHERE " +
"NIM = '10106031';");
statement.close();
}
}
setelah dieksekusi maka ini hasilnya :
image
sekarang kita coba proses DELETE :
import java.sql.SQLException;
import java.sql.Statement;

public class DeleteRecord {

public static void main(String args[]) throws SQLException {
Statement statment = Koneksi.getConnection().createStatement();
statment.executeUpdate("DELETE FROM MAHASISWA " +
"WHERE NIM = '10106031';");
statment.close();
}
}
setelah dieksekusi maka ini hasilnya :
image
ternyata gampangkan membuat koneksi dan melakukan proses INSERT UPDATE dana DELETE di Java. ;)

java.sql.ResultSet

seperti janji saya, sekarang kita akan belajar bagaimana melakukan proses SELECT di Java. hmmmm gampang aja, pertama buat Connection, llau buat Statement lalu buat ResultSet, caranya seperti ini :
Connection koneksi = ...
Statement statement = koneksi.createStatement();
ResultSet result = statement.executeQuery("SELECT ...");
setelah itu untuk mendapatkan datanya gunakan metode get[TipeData](“NAMA_KOLOM”) milik ResultSet. untuk lebih jelasnya sekarang kita akan mencoba menampilkan seluruh data pada tabel Mahiswa yang ada pada database NETBEANS:
import java.sql.Date;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class SelectRecord {

public static void main(String args[]) throws SQLException {
Statement statement = Koneksi.getConnection().createStatement();

statement.executeUpdate("INSERT INTO MAHASISWA VALUES ('1','A','1988-12-29')");
statement.executeUpdate("INSERT INTO MAHASISWA VALUES ('2','B','1988-12-29')");
statement.executeUpdate("INSERT INTO MAHASISWA VALUES ('3','C','1988-12-29')");
statement.executeUpdate("INSERT INTO MAHASISWA VALUES ('4','D','1988-12-29')");
statement.executeUpdate("INSERT INTO MAHASISWA VALUES ('5','E','1988-12-29')");

ResultSet result = statement.executeQuery("SELECT * FROM MAHASISWA");

String nim;
String nama;
Date tanggalLahir;
int index = 1;

while (result.next()) {
nim = result.getString("NIM");
nama = result.getString("NAMA");
tanggalLahir = result.getDate("TANGGAL_LAHIR");

System.out.println("Mahasiswa Ke-" + index);
System.out.println("Nim : " + nim);
System.out.println("Nama : " + nama);
System.out.println("Tanggal Lahir : " + tanggalLahir);
System.out.println();
index++;
}
result.close();
statement.close();
}
}
setelah dieksekusi, maka akan menghasilkan output seperti ini :

Mahasiswa Ke-1
Nim : 1
Nama : A
Tanggal Lahir : 1988-12-29
Mahasiswa Ke-2
Nim : 2
Nama : B
Tanggal Lahir : 1988-12-29
Mahasiswa Ke-3
Nim : 3
Nama : C
Tanggal Lahir : 1988-12-29
Mahasiswa Ke-4
Nim : 4
Nama : D
Tanggal Lahir : 1988-12-29
Mahasiswa Ke-5
Nim : 5
Nama : E
Tanggal Lahir : 1988-12-29

sekarang akan saya beritahu apa itu metode next() milik ResultSet. metode next() merupakan metode yang digunakan untuk mengecek apakah ada record lagi selain pada posisi index yang saat ini (pada awalnya posisi index ResultSet adalah 0 (nol)) jika ada maka index akan loncat kedepan misal dari 0 menjadi 1 dan akan mengembalikan nilai true, tetapi jika tak ada maka index tetap disitu dan akan mengembalikan nilai false;
selain itu perlu diketahui, bahwa class Statement dan ResultSet serta Connection memiliki metode yang bernama metode close(). metode ini merupakan metode yang digunakan untuk menutup. misal ketika Satement kita panggil metode close() nya maka Statement tersebut akan ditutup, sehingga koneksi ke MySQL akan terputus dan dari memori akan dibapus. jadi metode close() harus selalu dipanggil jika proses telah selesai, karena jika tidak maka akan terjadi penumpukan memori…..
tutorial berikutnya kita akan bahas tentang PrepareStatement
see you at next tutorial
http://eecchhoo.wordpress.com/2008/07/05/jdbc-dan-mysql-dengan-netbeans-part-1/
Gravatar Image
Suka jalan-jalan, naik sepeda, bermain code-code asal tidak suka mengkode cinta. Hubungi email : andhika.na@gmail.com jika anda butuh website untuk personal maupun bisnis.

Leave a Reply

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.