Java Database Connectivity (JDBC) (Minggu 5 Praktikum II)

dokumen-dokumen yang mirip
Masukkan connector tersebut ke dalam direktori pada tempat jdk di-instal dengan path

KA2173 Pemrograman Berorientasi Objek. 10 BAB X PENGAKSESAN DATABASE. H a l 64

Pemrograman Database Java

MODUL 6 JDBC (JAVA DATABASE CONNECTIVITY)

Pengenalan APLIKASI DATABASE

Arsitektur Aplikasi Perangkat Enterprise JDBC. Antonius Rachmat C, S.Kom, M.Cs

TUTORIAL SEDERHANA, JAVA (Swing) dan MYSQL (SELECT dan INSERT)

TUJUAN. Memahami Koneksi dan Pemrosesan Basis Data di Java Memahami JDBC Menggunakan MySQL pada program Java

Belajar Java 2 Tambah, Simpan & Cari Data di Netbeans dengan Database MySQL

MODUL I PENGENALAN MYSQL

MODUL PRAKTIKUM KE 9

MySQL Databases. Dasar-dasar MySQL dan Implementasi MySQL kedalam pemrograman PHP. Jakarta, 16 April 2011 Oleh: M. Awaludin, S.Kom

Java Database Connectivity (JDBC)

TUGAS FRAMEWORK 2 FAKULTAS TEKNIK JURUSAN TEKNIK INFORMATIKA UNIVERSITAS DR. SOETOMO SURABAYA MOCHAMMAD ANNAS FAHRUDIN

BAB IX KONEKSI POSTGRESQL PADA JAVA (Netbeans)

Tutorial Java Desktop 3 Melakukan Pengambilan data pada JavaDB

KA2173 Pemrograman Berorientasi Objek. 9 BAB IX PEMROGRAMAN GUI: SWING. H a l 56

Langkah-Langkah Pemrograman JDBC MENGIMPOR PACKAGE JAVA.SQL MEMANGGIL DRIVER JDBC

KONEKSI KE DATABASE DENGAN JDBC

visit :

Database. Danu Wira Pangestu 1. Mengenal Database. Lisensi Dokumen:

CARA MENGGUNAKAN SELECT QUERY PADA MYSQL

Tutorial Singkat MySQL

Pada Java, sebuah objek remote adalah instans dari suatu kelas yang mengimplementasikan antarmuka remote.

AKSES DATABASE MENGGUNAKAN JDBC

Koneksi Java GUI-Database

Pemrograman Berorientasi Obyek Lanjut (IT251) Ramos Somya, S.Kom., M.Cs.

SmallSQL. (DBMS 100% Murni Java) SmallSQL. Basis Data II. Dosen Pengampu : Noor Ifada. Kelompok BD2-B5

Firma Firmansyah Adi B. Resume Web Service

Tutorial Jasper Report with JDBC Prerequisites: Jasper Report, ireport installed, MySQL installed, and NetBeans IDE

BAB III PEMBANGUNAN API MYSQL

DAO design pattern diimplementasi dengan beberapa langkah, yaitu :

IF PEMROGRAMAN LANJUT MENGAKSES DATABASE. Oleh : Andri Heryandi, M.T.

Stored Procedure (create, calling SP dari Oracle dan dari JAVA)

PERINTAH DASAR MySQL

Tutorial Aplikasi Database Matakuliah Berbasis Java Swing Menggunakan Java Database Connectivity (JDBC)

Menghubungkan Database Access Menggunakan Netbeans Oleh : Yuliana Setiowati

PERTEMUAN III OBJEK DAN CLASS TUJUAN PRAKTIKUM

Pemrograman Jaringan 8.

Stored Procedure (create, calling SP dari Oracle dan dari JAVA)

( Dari Ms-DOS windows, diasumsikan mysql client berada pada direktori tersebut.) mysql ( dari Linux). mysql --help

TUGAS AKHIR PEMOGRAMAN VISUAL APLIKASI PETERNAKAN AYAM BERBASIS JAVA DI PETERNAKAN AYAM MANDIRI

PERTEMUAN 3 OBJEK DAN CLASS

GUI, Ev e Ev n e t n Handling, Ex ception Handling in Java

Modul 2. Database Menggunakan Primary Key, Unique, Auto Increment, Alter-Add dan Alter-Drop. Disusun oleh. Sri Siska Wirdaniyati JURUSAN STATISTIKA

Koneksi Visual Basic, MySQL (ODBC) dan Crystal Report

Perintah - Perintah Dasar Pada MySQL

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

JDBC. Imam Fahrur Rozi

LAPORAN MATA KULIAH PERANCANGAN SISTEM BERBASIS JAVA

Oleh : Agus Priyanto, M.Kom

Praktikum 6a Melakukan koneksi dengan basis data

MySQL. Pemrograman Web/MI/D3 sks 1

MODUL III STRUCTURED QUERY ANGUAGE (SQL)

Praktek Pemrograman Web

Model Koneksi Database Visual Basic 6.0 a. DAO (Data Access Objects) Menggunakan Objek Tanpa Objek b. ADO (ActiveX Data Objects) Menggunakan Objek Tan

Praktikum Sistem Basis Data MYSQL. Gentisya Tri Mardiani, S.Kom

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN WEB Semester: 2 MYSQL 200 menit No.: Job: 12 Tgl: Hal.

PEMROGRAMAN JAVA Sistem gudang

uri=" prefix="logic"%>

PRAKTIKUM 6 EXCEPTION

SISTEM INFORMASI DATA SISWA

BAB IV IMPLEMENTASI DAN PEMBAHASAN SISTEM. Pada tahap ini merupakan tahapan implementasi dari

Tutorial Singkat MySQL Menggunakan AppServ versi for Windows

SISTEM RANCANAGAN APLIKASI PEMBAYARAN SPP. Di Susun Oleh: Nama : Ikhlas Adi Putra Nim : Kelas : 21/Pagi

MODUL PRAKTIKUM PEMROGRAMAN BASIS DATA

PEMROGRAMAN JAVA Sistem gudang

Contoh SQL Constraint

MySQL AL AZHAR COMPUTER CLUB

E-trik Ajax. Database MySQL. Dedi Alnas

Mengkoneksikan Java Netbeans dengan Database di MySQL via XAMPP

Seri 01 : Belajar Database MySQL

DATABASE MYSQL DENGAN PHP

1. TUJUAN Mahasiswa dapat memahami langkah-langkah koneksi PHP dengan MySQL Mahasiswa dapat memahami pengambilan record dari database

Disini kita akan bahas cara koneksi antara Database MySQL dengan VB.Net 2010, semoga dengan ini E-book ini bisa ingat sepanjang jaman ya ^ ^

- Menuliskan business logic dari aplikasi untuk mengakses data source

Tutorial Java Desktop 2 Melakukan Koneksi ke Database JavaDB

Pertemuan XI Database Connectivity Fak. Teknik Jurusan Teknik Informatika. Caca E. Supriana, S.Si.,MT.

MODUL PRAKTIKUM BASIS DATA TEKNIK INFORMATIKA UIN SUNAN KALIJAGA YOGYAKARTA 2011 PENGENALAN DATABASE MYSQL

LAPORAN TUGAS BASIS DATA I

Akses Database Menggunakan JDBC

DATABASE - MySQL. Muhammad Zen S. Hadi, ST. MSc.

Eksekusi file setup.exe yang ada dalam CD atau folder instalasi oracle.

Praktikum Sistem Basis Data MYSQL. Gentisya Tri Mardiani, S.Kom., M.Kom

MEMBUAT LAPORAN DI JAVA DENGAN MENGGUNAKAN IREPORT

BAHASA PEMROGRAMAN JAVA

PERCOBAAN 6 EXCEPTION

BAB IV HASIL DAN PEMBAHASAN

PEMROGRAMAN JAVA. Yoannita, S.Kom. Input Kondisi (IF-ELSE, SWITCH)

SISTEM TERDISTRIBUSI PERTEMUAN IV ASP.NET WEB SERVICE (1)

Tahap Instalasi PostgreSQL di Windows

Lampiran Utama. a. Struktur Organisasi. Factory Manager. Vice Factory Manager. Non Produksi. Produksi. Dept. Power. Dept Greyee. Dept.

BAB IV IMPLEMENTASI DAN PENGUJIAN

KapitaSelekta. (KBKI82127, 2 sks) Materi : Pengenalan MySQL

Microsoft Data Access Components (MDAC) Oleh : Edi Sugiarto, S.Kom, M.Kom

LAPORAN PRAKTIKUM MODUL 1 PENGENALAN MYSQL


CRUD Hibernate Java. Oleh: Yudi Setiawan

Pengenalan Structured Query Language

IF PEMROGRAMAN LANJUT EXCEPTION. Oleh : Andri Heryandi, M.T.

Transkripsi:

Rosa Ariani Sukamto Email: rosa_if_itb_01@yahoo.com Website: http://www.gangsir.com Java Database Connectivity (JDBC) (Minggu 5 Praktikum II) 1. Sekilas JDBC JDBC API adalah API java untuk mengakses basis data. JDBC API berisi kumpulan kelas yang ditulis dengan bahasa pemrograman Java yang menyediakan API standar untuk mengakses basis data. JDBC memungkinkan programer melakukan hal-hal berikut: 1. membuat koneksi dengan sebuah sumber data 2. mengirimkan query dan mengubah isi sumber data 3. memproses hasil query 2. JDBC API vs ODBC Microsoft membuat ODBC (Open Database Connectivity) sebagai antarmuka pemrograman untuk mengakses basis data relasional. ODBC memiliki kemampuan untuk mengakses hampir semua basis data yang ada hampir di semua platform. ODBC sudah banyak digunakan ketika JDBC sedang dikembangkan, lalu pertanyaannya, kenapa Java tidak memakai ODBC saja? ODBC dapat digunakan untuk membuat program Java yang mengakses basis data, tapi akan menjadi lebih baik jika penggunaan ODBC juga melalui JDBC yang biasa disebut sebagai JDBC-ODBC Bridge (terpaket pada JDK untuk Windows dan Solaris) hal ini dikarenakan beberapa alasan berikut: 1. ODBC kurang sesuai untuk penggunaan secara langsung oleh bahasa pemrograman Java karena ODBC menggunakan bahasa C. Pemanggilan antarmuka C oleh Java dapat menyebabkan masalah keamanan dan kesesuaian pada aplikasi 2. Banyak terdapat redudansi objek, karena dari Java, ODBC akan menyalin objek Java dengan cara C. 3. ODBC lebih kompleks dalam penggunaanya karena fungsi-fungsi sederhana dan kompleks dipaket menjadi satu. 4. JDBC telah dipaket dengan JDK, sedangkan ODBC merupakan installer tersendiri JDBC API merupakan antarmuka Java murni untuk berkerja dengan SQL. Microsoft juga mempublikasikan API selain ODBC seperti OLE DB, ADO (ActiveX Data Object), dan ADO.NET yang juga dapat mengeksekusi query SQL. Hal-hal yang bisa dilakukan dengan menggunakan JDBC API adalah sebagai berikut:

membuat tabel memasukkan nilai record ke tabel query untuk mengakses tabel mendapatkan hasil query mengubah tabel 3. JDBC Driver JDBC Driver mengimplementasikan antarmuka yang didefinisikan dalam JDBC API untuk berinteraksi dengan server basis data. JDBC Driver digunakan untuk membuka koneksi dan berinteraksi dengan basis data dengan mengirimkan query SQL kemudian menerima hasil query dengan Java. JDBC Driver biasanya dapat didapatkan dari vendor basis data. Berikut gambat keterhubungan JDBC API dengan JDBC Driver: 4. Praktikum a. Persiapan Membuat direktori kerja dengan nama SI319-P5-2-Kelas-NIM misalnya SI319- P5-2-A-23507024 Di dalam direktori di atas, buat direktori JDBC untuk menyimpan file-file yang akan dibuat b. MySQL Connector 1. Cari file mysql-connector-java-5.1.2-beta-bin.jar pada komputer yang Anda pakai 2. Masukkan mysql-connector-java-5.1.2-beta-bin.jar pada direktori instal_jdk/jre/lib/ext dan pada jre/lib/ext (cara ini digunakan untuk menambah library atau pustaka pada Java)

c. Membuat Basis Data Pada MySQL 1. Buka command prompt, masuk ke direktori bin pada MySQL, ketik perintah: mysql uroot jika perintah tidak dikenali maka start MySQL dengan mengetik perintah: mysqld 2. pada command prompt (di direktori bin MySQL), kemudian ketik perintah sebelumnya sampai muncul tampilan berikut: C:\xampp\mysql\bin>mysql -uroot Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 4 Server version: 5.0.37 Source distribution Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> 3. Setiap query SQL yang berhasil dieksekusi, maka akan keluar tulisan seperti contoh berikut: mysql> INSERT INTO mata_kuliah(kode, nama, semester) VALUES('IF3281','Pemrograman Berorientasi Objek', 3); Query OK, 1 row affected (0.00 sec) Yang penting adalah hasil: Query OK, 1 row affected Ketik query SQL berikut pada command prompt di atas. CREATE DATABASE IF NOT EXISTS Kuliah; USE Kuliah; CREATE TABLE mahasiswa( nim VARCHAR(10) NOT NULL, nama VARCHAR(255) NOT NULL, tanggal_lahir DATE NOT NULL, alamat VARCHAR(255) NULL, PRIMARY KEY (nim) );

CREATE TABLE mata_kuliah( kode VARCHAR(10) NOT NULL, nama VARCHAR(255) NOT NULL, semester INTEGER(2) NOT NULL, PRIMARY KEY (kode) ); CREATE TABLE nilai( kode VARCHAR(10) NOT NULL, nim VARCHAR(10) NOT NULL, nilai DECIMAL(5,2) NULL, alphabet VARCHAR(2) NULL, PRIMARY KEY (kode, nim), FOREIGN KEY (nim) REFERENCES mahasiswa, FOREIGN KEY (kode) REFERENCES mata_kuliah ); INSERT INTO mahasiswa(nim, nama, tanggal_lahir) VALUES('13507701','Nana','1960-01-01'); INSERT INTO mahasiswa(nim, nama, tanggal_lahir, alamat) VALUES('13507702','Rudi','1959-12-31','Bandung'); INSERT INTO mahasiswa(nim, nama, tanggal_lahir, alamat) VALUES('13507703','Dea','1959-07-07','Bandung'); INSERT INTO mahasiswa(nim, nama, tanggal_lahir, alamat) VALUES('13507704','Ihsan','1958-11-08','Surabaya'); INSERT INTO mahasiswa(nim, nama, tanggal_lahir, alamat) VALUES('13507705','Tiara','1959-11-04','Yogyakarta'); INSERT INTO mata_kuliah(kode, nama, semester) VALUES('IF1281','Algoritma dan Pemrograman', 1); INSERT INTO mata_kuliah(kode, nama, semester) VALUES('IF2281','Struktur Data', 2); INSERT INTO mata_kuliah(kode, nama, semester) VALUES('IF3281','Pemrograman Berorientasi Objek', 3); INSERT INTO mata_kuliah(kode, nama, semester) VALUES('IF3111','Basis Data', 3); INSERT INTO nilai(kode, nim, nilai, alphabet) VALUES('IF1281','13507701', 64.75, 'C'); INSERT INTO nilai(kode, nim, nilai, alphabet) VALUES('IF2281','13507702', 75.11, 'B'); INSERT INTO nilai(kode, nim, nilai, alphabet) VALUES('IF3181','13507703', 84.63, 'A');

INSERT INTO nilai(kode, nim, nilai, alphabet) VALUES('IF3111','13507704', 77.07, 'B'); 4. Ketik perintah: \q Untuk keluar dari MySQL d. Penggunaan JDBC pada program 1. Buat file berikut: Nama file: DB.java import java.sql.connection; import java.sql.drivermanager; import java.sql.sqlexception; import java.sql.statement; import java.sql.resultset; class DB { private Statement stmt = null; // koneksi query private ResultSet rs = null; // hasil query private Connection conn = null; // koneksi MySQL dan basis data public DB(String ConAddress) throws Exception, SQLException { * Method DB * Konstruktor : melakukan koneksi ke MySQL dan basis data * Menerima masukan berupa string alamat koneksi ke MySQL dan basis data // membuat/meregistrasi driver MySQL Class.forName("com.mysql.jdbc.Driver").newInstance(); // membuat koneksi MySQL dan basis data conn = DriverManager.getConnection(ConAddress); conn.settransactionisolation(conn.transaction_read_uncommitted); catch(sqlexception es) { // mengeluarkan pesan error jika koneksi gagal throw es; public void createquery(string Query)throws Exception, SQLException { * Method createquery * Mengeksekusi query tanpa mengubah isi data * Menerima masukan berupa string query

stmt = conn.createstatement(); // eksekusi query rs = stmt.executequery(query); if (stmt.execute(query)) { // ambil hasil query rs = stmt.getresultset(); catch(sqlexception es) { // eksepsi jika query gagal dieksekusi throw es; public void createupdate(string Query)throws Exception, SQLException { * Method createquery * Mengeksekusi query yang mengubah isi data (update, insert, delete) * Menerima masukan berupa string query stmt = conn.createstatement(); // eksekusi query int hasil = stmt.executeupdate(query); catch(sqlexception es) { // eksepsi jika query gagal dieksekusi throw es; public ResultSet getresult()throws Exception { * Method getresult * Memberikan hasil query ResultSet Temp = null; try{ return rs; catch (Exception ex) { // eksepsi jika hasil tidak dapat dikembalikan return Temp; public void closeresult()throws SQLException, Exception { * Method closeresult * Menutup hubungan dari eksekusi query if (rs!= null) { rs.close(); catch (SQLException sqlex) { rs = null;

throw sqlex; if (stmt!= null) { stmt.close(); catch (SQLException sqlex) { stmt = null; throw sqlex; public void closeconnection()throws SQLException, Exception { * Method closeconnection * Menutup hubungan dengan MySQL dan basis data if (conn!= null) { conn.close(); catch(sqlexception sqlex) { conn = null; class CobaBDAkses{ public static void main(string[] args) { // isi dengan nim pada kode di bawa ini, misal Owner: 1206001 System.out.println("Owner: [nim]"); try{ /* pada kode berikut, user diisi dengan root, password diisi dengan password mysql jika ada, jika tidak ada bisa dikosongkan DB db = new DB("jdbc:mysql://localhost:3306/kuliah?user=root&password="); db.createquery("select * FROM MAHASISWA"); try{ int i = 1; while(db.getresult().next()){ // ambil hasil query String nim = db.getresult().getstring(1); String nama = db.getresult().getstring(2); String tl = db.getresult().getstring(3); String alamat = db.getresult().getstring(4); System.out.println("-----------------------"); System.out.println("record ke : " + i); System.out.println("nim : " + nim); System.out.println("nama : " + nama); System.out.println("tanggal lahir : " + tl); if(alamat!= null){ System.out.println("alamat : " + alamat);

else{ System.out.println("alamat : null"); System.out.println("-----------------------"); i = i + 1; catch(exception e){ e.printstacktrace(); db.closeresult(); db.closeconnection(); catch(exception e){ e.printstacktrace(); Pada kode di atas url koneksi jdbc:mysql://localhost:3306/kuliah?user=root&password= merupakan hasil dari jdbc:mysql://<host>:<port>/<nama_basis_data>?user=<user>&password=<password>. 2. Lakukan kompilasi dengan perintah: javac DB.java ( jika javac tidak dikenali maka set path dengan perintah: ) path=c:/jdk/bin;%path% 3. lalu eksekusi program dengan perintah: java cp. CobaBDAkses