Anda di halaman 1dari 7

DATABASE SEBAGAI MEDIA PENYIMPANAN

DAN MENGOLAH DATA


Penggunaan database dalam sebuah aplikasi merupakan hal yang cukup penting, bila data yang
diolah dan disimpan berjumlah banyak. Dengan pembuatan file teks biasa, akan cukup merepotkan untuk
melakukan pencarian dan pengolahan data lainnya. Programmer harus membuat berbagai fungsi untuk hal
tersebut.
Ada banyak DBMS (DataBase Management System) yang beredar di pasaran. Setiap merk
mempunyai kelebihan dan kekurangan tersendiri. Namun semua DBMS pasti sudah memiliki operasioperasi query yang sudah dioptimalisasi dalam berbagai kondisi. Database dan operasi yang ada pun
dapat diakses menggunakan bahasa pemrograman yang Anda gunakan, selama driver-nya tersedia.
Salah satu DBMS yang cukup banyak digunakan adalah MySQL. Hal ini salah satunya karena
MySQL menyediakan versi gratis yang cukup powerful, dengan dukungan driver untuk berbagai bahasa
pemrograman, serta cukup ringan untuk dijalankan. Instalasi MySQL bisa dilakukan secara terpisah
maupun dalam paket web server seperti XAMPP maupun WAMP. Dalam artikel ini, yang digunakan
adalah MySQL yang ada dalam paket server XAMPP.
Koneksi database bisa lebih mudah dilakukan dengan menggunakan IDE seperti NetBeans.
Dengan IDE tersebut, Anda tidak perlu mencari driver yang akan digunakan untuk mengakses database.
Dalam artikel ini juga digunakan NetBeans sebagai alat bantu koneksi database. Namun demikian, driver
tersebut juga bisa didapatkan secara terpisah di http://www.mysql.com/downloads/connector/j/.
Berikut beberapa langkah pemrograman Java menggunakan database.
1. Buatlah sebuah project pada NetBeans. Pada struktur project tersebut, terdapat dua folder di
bawahnya, yaitu Source Packages dan Libraries. Klik kanan pada Libraries, dan pilih menu Add
Library.

2. Sebuah jendela dialog akan muncul. Pilih MySQL JDBC Driver, lalu klik Add Library. Pastikan
setelah proses tersebut, di dalam folder Libraries sebelumnya terdapat sebuah library tambahan.

3. Sebelum memulai koneksi, jangan lupa aktifkan dahulu MySQL server Anda. Setelah itu, untuk
mengetes apakah Driver bisa digunakan, ketikkan kode sebagai berikut.
1

public class DatabaseTest {

2
3
4

public static void main(String[] args) {


try {

Class.forName("com.mysql.jdbc.Driver").newInstance();

System.out.println("Driver berhasil diload");

} catch (ClassNotFoundException ex) {

} catch (InstantiationException ex) {

} catch (IllegalAccessException ex) {

10

11
12

}
}

4. Bila program berjalan lancar, maka akan tercetak Driver berhasil diload pada output.
5. Setelah itu, untuk membuat koneksi, dapat dilakukan dengan class Connection. Namun
pembuatannya tidak dengan menginisialisasi secara biasa, melainkan sudah ada method
getConnection() dari class DriverManager untuk mendapatkan object koneksi, seperti kode
berikut ini.
1

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.SQLException;

4
5

public class DatabaseTest {

6
7

public static void main(String[] args) {

try {

String path = "jdbc:mysql://localhost:3306/xml_web";

10

String username = "xml_web";

11

String password = "xml_web";

12

Connection connect = DriverManager.getConnection(path, username, password);

13

System.out.println("Koneksi sukses");

14

} catch (SQLException ex) {

15

16
17

}
}

6. Ketiga parameter yang dimasukkan adalah path, username, serta password dari database yang
akan diakses. Dalam artikel ini, dicontohkan database yang digunakan adalah xml_web.
7. Untuk mengeksekusi perintah SQL, class yang digunakan adalah Statement. Class ini menyimpan
perintah-perintah SQL seperti SELECT, INSERT, UPDATE, dan DELETE untuk kemudian

dieksekusi. Object statement didapatkan dari koneksi yang telah dibuat sebelumnya. Misalkan,
ada
table
seperti
pada
gambar.

Untuk
memasukkan data baru, Anda bisa melakukan seperti contoh berikut ini.
1

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.SQLException;

import java.sql.Statement;

5
6

public class DatabaseTest {

7
8
9

public static void main(String[] args) {


try {

10

String path = "jdbc:mysql://localhost:3306/xml_web";

11

String username = "xml_web";

12

String password = "xml_web";

13

Connection connect = DriverManager.getConnection(path, username, password);

14

Statement statement = connect.createStatement();

15

String query = "INSERT INTO users "

16

+ "(email, username, password, last_login) "

17

+ "VALUES "

18

+ "('admin@admin.com', 'admin', 'asdfwerg123', NULL);";

19

statement.executeUpdate(query);

20

System.out.println("Penambahan data sukses");

21

} catch (SQLException ex) {

22

23
24

}
}

8. Bila Anda jalankan program tersebut, maka otomatis data baru akan masuk ke table.

9. Cara di atas sama untuk perintah UPDATE dan DELETE. Anda hanya cukup menerapkan SQL
biasa di dalam statement. Sedangkan untuk proses SELECT, eksekusi query akan mereturn
sebuah object, yaitu ResultSet. Object ini menyimpan data hasil query SELECT dalam bentuk
Collection Iterable. Berikut contoh kode programnya.
1

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

6
7

public class DatabaseTest {

8
9
10

public static void main(String[] args) {


try {

11

String path = "jdbc:mysql://localhost:3306/xml_web";

12

String username = "xml_web";

13

String password = "xml_web";

14

Connection connect = DriverManager.getConnection(path, username, password);

15

Statement statement = connect.createStatement();

16

String query = "SELECT email, username, password, last_login FROM users;";

17

ResultSet result = statement.executeQuery(query);

18

while(result.next()) {

19

String data = result.getString("email");

20

data += " | " + result.getString("username");

21

data += " | " + result.getString("password");

22

data += " | " + result.getString("last_login");

23

System.out.println(data);

24

25

} catch (SQLException ex) {

26

27
28

}
}

10. ResultSet dapat dilakukan perulangan dengan method next(). Setelah itu, untuk mendapatkan data
setiap field-nya, digunakan method getString(), getInt(), dan sebagainya. Hasil exsekusi query di
atas kurang lebih sebagai berikut.
1

me@haqqi.net | haqqi | 34hr2o234k2h34h | null

admin@admin.com | admin | asdfwerg123 | null

11. Cara lain untuk membuat statement adalah menggunakan class PreparedStatement. Fungsinya
hampir sama dengan Statement biasa, namun class ini menyediakan sebuah template query yang
mana parameternya bisa dimasukkan pada baris berikutnya, seperti berikut ini.
1

PreparedStatement statement = connect.prepareStatement("INSERT INTO users "

+ "(email, username, password, last_login) "

+ "VALUES " + "(?, ?, ?, ?);");

statement.setString(1, "test@test.com");

statement.setString(2, "test");

statement.setString(3, "d7fj23hfos74");

statement.setString(4, null);

statement.executeUpdate();

12. Seperti yang bisa dilihat, tanda tanya (?) merupakan variable yang bisa diganti dengan
memanggil method setString(), setInt(), dan sebagainya sesuai tipe datanya.

13. Cara yang sama dengan PreparedStatement juga bisa digunakan untuk mendapatkan ResultSet
dengan query SELECT dan eksekusi method executeQuery().
Dengan dasar cara koneksi database MySQL di atas, Anda bisa mengembangkannya menjadi aplikasi
database lainnya. Selamat mencoba!
Diambil dari berbagai sumber di internet..

Anda mungkin juga menyukai