36
Koneksi Java ke MySQL Database Edi Sugiarto, S.Kom, M.Kom

Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

  • Upload
    dodat

  • View
    248

  • Download
    10

Embed Size (px)

Citation preview

Page 1: Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

Koneksi Java ke MySQL Database

Edi Sugiarto, S.Kom, M.Kom

Page 2: Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

• Mysql adalah RDBMS yang didistribusikansecara gratis dibawah lisensi GPL (GeneralPublic License).

• Mysql dimiliki dan disponsori perusahaankomersial Swedia MySQL AB dimanaperusahaan ini memegang hak cipta hampiratas semua kode sumbernya. Pendiri MySQLAB adalah : David Axmarl, Allan Larsson, danMichael “Monthy Widenius.

(Sumber : http://id.wikipedia.org/wiki/MySQL, diakses pada 19 September 2010 pukul 15.00 )

Pendahuluan

Page 3: Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

Menggunakan SQL (Structured Query

Language) sebagai bahasa dasar untuk

mengakses databasenya.

Page 4: Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

Secara umum, SQL terdiri dari dua bahasa yaitu :

• Data Definition Language (DDL).

• Data Manipulation Language(DML).

Page 5: Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

Data Definition Language(DDL)

Digunakan untuk mendefinisikan, mengubah,

serta menghapus basis data dan objek-objek

yang diperlukan dalam basis data : tabel,

view, procedure.

Beberapa keyword

1. Create

2. Alter

3. Drop

Page 6: Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

Database

• Membuat Database

– Create Database <nama database>;

• Menghapus Database

– Drop Database <nama database>;

• Menampilkan Database

– Show Databases;

• Menggunakan Database

– Use <nama database>

Page 7: Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

Tabel• Membuat Tabel

– Create Table <nama table> (

<field 1><tipe data><constraint>,

<field 2><tipe data>,

<Field n><tipe data>);

• Menghapus Tabel

– Drop Table <nama tabel>;

• Menampilkan Tabel

– Show Tables;

Page 8: Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

Tabel (Lanjutan)

• Mengubah nama tabel

– Rename table <nama table> to <nama

baru>;

• Mengubah Tabel

– Alter <nama Table> <Operasi> <Field>

• Operasi : Add, Modify, Change, Drop.

Page 9: Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

View

• Membuat View

– Create view <nama view> as <perintah

sql>

• Menghapus View

– Drop view<nama tabel>;

• Mengubah View

– Alter view <nama view> as <peritah sql>

Page 10: Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

Data Manipulation Language (DML)

DML digunakan untuk memanipulasi data yang ada

dalam suatu tabel. Perintah yang umum dilakukan

adalah:

1. Select : untuk menampilkan data

2. Insert : untuk menambah data

3. Update : untuk mengubah data

4. Delete : untuk menghapus data

Page 11: Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

Perintah Select

Select <field1>,<field2>,<field3> from

<nama tabel>

Atau

Select * from <nama tabel>

( perintah * digunakan untuk menampilkan seluruh field pada tabel

)

Page 12: Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

Perintah Select dengan Kriteria

Dalam pengelolaan database yang besar dengan jumlah

record ribuan dalam suatu tabel, sangat mungkin kita

melakukan filtering dalam pengambilan data, untuk

kasus seperti ini kita dapat menggunakan kriteria

dalam pengambilan data. Pengambilan data dengan

kriteria kita perlu menambah sintak Where pada

perintah Select

Page 13: Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

Perintah Select dengan Kriteria (Lanjutan)

Select * from <tabel> where

<field>=<kriteria>

Atau

Select * from <tabel> where

<field1>=<kriteria1> <operator logic>

<field2>=<kriteria2>

Contoh :

Select * from tbbarang where harga>=200000

and stok<=20

Page 14: Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

Perintah Insert

Kita menggunakan perintah Insert untuk memasukkan data kedalam tabel, sintaknya sbb :

Insert into <nama tabel> (<field1>,<field2>)

values (<data1>,<data2>)

Contoh :

Insert into tbbarang

(kode,nama,kategori,hargabeli,hargajual)

values (‘K001’,’Rinso

Ultra’,’Sabun’,5000,6000);

Page 15: Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

Perintah Update

• Digunakan untuk melakukan perubahan record pada suatu

tabel, Sintaknya Sbb :

Update <nama table> set <field1>=<data1>

where <field>=<criteria>;

Contoh :

Mengubah hargajual menjadi 3250.

Update tbbarang set hargajual=3250 where

kode=’K002’;

Page 16: Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

Perintah Delete

Perintah delete digunakan untuk menghapus data pada

tabel, perintah delete dilakukan tanpa konfirmasi

sehingga kita perlu hati-hati menggunakan perintah

tersebut.

Delete from <nama tabel>;

Diatas artinya menghapus semua data pada tabel;

Delete from <nama tabel> where

<field>=<kriteria>

Artinya menghapus data pada tabel dengan criteria

Page 17: Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

latihan• Buat Tabel dengan nama pbo_buku dengan struktur tabel sbb:

• Kemudian tambahkan lima

record dengan Kode :

BK001, BK002, BK003,

BK004, BK005,BK006

• Kemudian Ubah Nama

menjadi Pemrograman Java

untuk Kode BK003

• Selanjutnya Hapus Buku

dengan Kode BK006.

Page 18: Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

Koneksi Java ke MySQL

Page 19: Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

Pendahuluan

• Database adalah sekumpulan data yang saling berhubungan.

Java mendukung dalam pembuatan aplikasi yang terkoneksi

dengan database. JDBC API (Java Database Conectivity

Application Programing Interface ) adalah Java API yang

berfungsi melakukan pengaksesan terhadap data tabular dalam

basis data (database). JDBC Api memungkinkan kita

melakukan 3 hal :

1. Membangun Koneksi

2. Mengirim Pernyataan SQL

3. Memproses Hasil.

Page 20: Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

Apa yang dibutuhkan ?

1. Platform Java termasuk JDBC API : JDBC API telahinclude jika anda menggunakan JDK versi 1.4 keatas.

2. Database Management System (DBMS) : Dbmsdiperlukan sebagai gudang data, dbms ini nantinyadigunakan sebagai tempat menyimpan data, mengolah danmengambil informasi dari data yang telah di masukkan.Contoh dbms adalah : Mysql, MsSql Server, Oracle dsb.Untuk pembahasan selanjutnya kita menggunakan databaseMysql.

3. JDBC Driver

Page 21: Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

Me-Load JDBC Driver

• perintah me Load driver mysql kita dapat gunakan perintah

Class.forName(<driver>).

Contoh :

Class.forName(“com.mysql.jdbc.Driver”);

Page 22: Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

Membangun Koneksi

Setelah meLoad driver kita dapat melakukan koneksi ke database

dengan menggunakan class object Connection. Sintaknya sbb :

Connection conn =

DriverManager.getConnection(<Url>,<User>,<Password>);

Contoh :

conn=DriverManager.getConnection("jdbc:mysql://localhost/b

arang","root","");

Page 23: Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

Menjalankan Query

String sql="insert into barang(kode,nama ,kategori,hargabeli,hargajual,stok) values (‘B001’,’Televisi Hitachi 14 Inchi ’,’Elektronik’ ,800000,900000,20)";

try

{

stmt = conn.createStatement(sql);

stmt.executeUpdate(sql);

}

catch(Exception erSimpan)

{

JOptionPane.showMessageDialog(null,erSimpan);

}

Page 24: Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

Menambahkan MySQL JDBC Driver Library

pada Netbeans

Page 25: Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

• Untuk menambahkan library Mysql JDBC Driver pada netbeans lakukan langkah berikut.

Klik kanan pada Project

dan pilih Properties

Selanjutnya pilih

Libraries

Page 26: Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

Pilih Add Library

Pada jendela Available

Libraries pilih MySQL

JDBC Driver, selanjutnya

tekan tombol Add Library

Jika MySQL JDBC

Driver telah ditambah

pada Library maka tekan

tombol OK

Page 27: Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

Membuat Kelas Koneksi

Page 28: Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

Buatlah kelas baru

dengan nama

koneksiMysql dan tulis

kode berikut

Page 29: Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

Menampilkan Data padaJTable

Page 30: Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

• Buatlah form baru dengan nama DisplayBuku, buatlah desan sbb:

JTable1

Page 31: Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

Import paket yang digunakan

dan Tambahkan variabel

Page 32: Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

Pada konstruktor

tambahkan kode berikut

untuk membuka koneksi

Page 33: Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

Tambahkan method

tampilTable

Page 34: Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

Panggil method

tampilTable pada

konstruktor untuk

menampilkan data

Page 35: Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

Maka ketika di Run File

data akan ditampilkan

pada JTable

Page 36: Koneksi Java ke MySQL Database - dinus.ac.iddinus.ac.id/repository/docs/ajar/1._Edi_PPBO_Java_Mysql.pdf · • Mysql adalah RDBMS yang didistribusikan ... Java mendukung dalam pembuatan

Terima kasih