Materi PMBO Bab 3 Kelas XII RPL: Koneksi Java ke Basis Data
A. Pengenalan JDBC
Basis data adalah kumpulan informasi terstruktur yang disimpan secara elektronik dalam sistem komputer. Basis data biasanya dikendalikan oleh sistem manajemen basis data atau Database Management System (DBMS). Kaitan antara data, DBMS, dan aplikasi disebut dengan basis data. Umumnya saat ini, basis data dioperasikan dalam bahasa Structured Query Language (SQL) yang dapat dikoneksikan dengan bahasa pemrograman lainnya, sesuai dengan kebutuhan dari program yang dikembangkan. Untuk mengoneksikan DBMS dan program Java, diperlukan tools pendukung bernama JDBC.
JDBC adalah akronim untuk Java Database Connectivity. JDBC merupakan salah satu pengembangan lanjutan dari Open Database Connectivity (ODBC). JDBC adalah bagian dari Application Programming Interface (API) yang dikembangkan untuk memindahkan data dari front end ke back end. API terdiri atas class dan interface yang ditulis dalam bahasa pemrograman Java.
Pada dasarnya, API bertindak sebagai interface atau saluran antara program Java dan basis data. Interface berfungsi membangun tautan antara Java ke basis data sehingga seorang programmer dapat mengirim data dari kode Java dan menyimpannya dalam basis data.
Sebagai driver basis data, JDBC memilki fungsi sebagai berikut.
1. Membuat koneksi ke basis data.
2. Membuat pernyataan SQL atau MySQL.
3. Menjalankan query SQL atau MySQL dalam basis data.
4. Melihat dan memodifikasi catatan atau record yang dihasilkan.
Di dalam JDBC, terdapat bagian-bagian yang menyediakan komponen, antara lain sebagai berikut.
1. DriverManager
Class DriverManager digunakan untuk mengelola daftar driver basis data. DriverManager bertugas mencocokkan permintaan koneksi dari aplikasi Java dengan driver basis data yang tepat menggunakan subprotocol komunikasi. Driver pertama yang mengenali subprotocol tertentu di bawah JDBC akan digunakan untuk membuat koneksi basis data.
2. Driver
Interface Driver berfungsi menangani komunikasi dengan server basis data. Programmer dan pengguna dapat berinteraksi secara langsung dengan objek Driver, sebagai penghubungnya adalah objek DriverManager.
3. Connection
Interface Connection terdiri atas method-method untuk menghubungkan program dengan basis data, sebagai contoh method untuk transaction management, seperti commit() dan rollback().
4. Statement
Programmer menggunakan objek yang dibuat dari interface Statement untuk mengirimkan pernyataan SQL ke basis data. Beberapa interface turunan menerima parameter tambahan untuk menjalankan stored procedures.
5. ResultSet
Objek ResultSet menyimpan data yang diambil dari basis data setelah query SQL dieksekusi oleh program.
6. SQLException
Class SQLException menangani kesalahan yang terjadi dalam aplikasi basis data.
B. Penyedia Server Basis Data
Software basis data yang akan digunakan dapat disesuaikan dengan kebutuhan dan keinginan dari programmer. Berikut adalah beberapa software basis data yang populer digunakan.
1. MySQL DB
MySQL DB adalah sebuah aplikasi manajemen basis data open source yang dikembangkan oleh Oracle. Setiap pengguna dapat secara gratis menggunakan MySQL dengan men-download pada situs resmi MySQL DB. Aplikasi ini mendukung operasi basis data transaksional dan non-transaksional serta memiliki unjuk kerja yang unggul dibandingkan aplikasi manajemen basis data lainnya.
2. PostgreSQL DB
PostgreSQL DB dapat di-download secara gratis pada situs resmi PostgreSQL DB karena sifat dari software ini adalah open source, sama seperti MySQL DB. Software ini didukung dengan tool aplikasi berbasis GUI yang disebut dengan pgAdminlll. JDBC driver secara otomatis akan terinstal pada Windows jika PostgreSQL DB telah terpasang pada komputer.
3. Oracle DB
Oracle DB adalah sebuah server basis data berbayar yang dikembangkan oleh Oracle. Aplikasi basis data ini digunakan untuk membuat sebuah aplikasi basis data skala besar dan profesional. Oracle dilengkapi dengan fasilitas tool aplikasi yang disebut dengan Enterprise Manager. JDBC driver akan terpasang setelah aplikasi Oracle DB terinstal pada komputer.
C. Pengaturan dan Instalasi JDBC
Untuk mulai mengembangkan aplikasi basis data dengan JDBC, programmer harus mengatur lingkungan (environment) atau melakukan setting JDBC dengan mengikuti langkah-langkah yang akan ditunjukkan sebagai berikut.
1. Instalasi Java Development Kit (JDK)
Langkah-langkah instalasi JDK adalah sebagai berikut.
a. Download aplikasi Java atau Java Development Kit (JDK) pada situs resmi Oracle https://www.oracle.com/technetwork/ java/javase/downloads atau situs lainnya yang menyediakan file JDK.
b. Install J2SE Development Kit 5.0 (JDK 5.0) atau versi yang lebih tinggi dari situs resmi Java.
c. Double click pada file JDK tersebut, sebagai contoh JDK yang digunakan adalah jdk-8u202-windows-x64.exe.
d. Klik tombol Next untuk melanjutkan ke bagian Custom Setup.
e. Pada bagian Custom Setup, dapat diubah direktori penyimpanan dari file JDK yang akan diinstal, dengan klik pada bagian Change.
f. Pada form Gambar 3.7, file JDK akan diinstal pada direktori C:\Program Files\Java\jdk1.8.0_202, direktori folder tersebut dapat diubah sesuai keinginan Anda. Setelah menentukan direktori instalasi, klik OK.
g. Setelah itu, Anda akan diarahkan kembali ke kotak dialog Custom Setup. Klik Next, kemudian akan terjadi proses instalasi beberapa file yang dibutuhkan untuk menjalankan aplikasi Java. Instalasi file tersebut berjalan secara otomatis.
h. Setelah proses instalasi beberapa file pendukung selesai, akan ditampilkan kotak dialog Complete. Pada tampilan tersebut, dijelaskan bahwa instalasi telah berhasil dilakukan. Anda juga dapat melihat tutorial akses, dokumentasi API, panduan developer, release notes, dan informasi lainnya dengan mengeklik tombol Next Steps. Untuk menutup kotak dialog, klik Finish.
2. Instalasi JDBC untuk MySQL Database Server
Langkah-langkah instalasi JDBC untuk MySQL Database Server adalah sebagai berikut.
a. Untuk melakukan instalasi JDBC, diperlukan file mysql-connector-java-5.0.8.jar atau versi yang terbaru yang dapat di-download pada situs https://dev.mysql.com/ downloads/connector/j/.
b. Setelah file ter-download, letakkan file tersebut pada folder Java yang telah di-setting sebelumnya, yaitu C:\ProgramFiles\ Java\jdk1.8.0_202.
c. Selanjutnya, lakukan konfigurasi ClassPath di Windows. Anda dapat melihat langkah-langkah konfigurasi ClassPath yang lebih rinci pada buku Pemrograman Berorientasi Objek Kelas XI. Berikut adalah langkah-langkah melakukan konfigurasi ClassPath.
1). Setting ClassPath.
2). Klik Start - Control Panel - System Properties.
3). Pilih tab Advanced - Environment Variable.
4). Pada kotak dialog Environment Variable yang muncul, pilih System Variables.
5). Isi Nama Variabel dengan "CLASSPATH":
6). Isi Nilai Variabel dengan "C:\ProgramFiles\Java\jdk1.8.0_202 mysql-connector-java-5.0.8-rc-bin.jar".
3. Instalasi JDBC untuk Oracle Database Server
Langkah-langkah instalasi JDBC untuk Oracle Database Server adalah sebagai berikut.
a. Download file ojdbc6.jar pada situs http://www.oracle.com/technetwork/database/enterprise-edition/jdbc-112010-090769.html.
b. Copy dan paste file tersebut pada folder C:Java\jdk1.8.0_202\lib\.
c. Restart komputer.
D. Mempelajari Syntax SQL JDBC
Structured Query Language (SQL) adalah bahasa pemrograman yang memungkinkan programmer untuk melakukan operasi pada basis data, seperti membuat entri, membaca konten, memperbarui konten, dan menghapus entri. SQL didukung oleh hampir semua basis data yang kemungkinan akan digunakan oleh programmer. SQL juga memungkinkan programmer untuk menulis kode basis data secara independen dari basis data yang mendasarinya.
Pada bagian ini, Anda akan diberikan gambaran umum tentang SQL, yang merupakan prasyarat untuk memahami konsep JDBC. SQL memiliki beberapa pernyataan yang umum digunakan untuk mengelola dan memanipulasi data di basis data (DML). Beberapa pernyataan tersebut, antara lain sebagai berikut.
1. SELECT, pernyataan ini digunakan untuk mengambil data dari basis data.
2. FROM, pernyataan ini digunakan untuk memilih tabel di basis data yang menjadi sumber data yang akan ditampilkan.
3. WHERE, pernyataan ini digunakan untuk menentukan kriteria data yang akan dimanipulasi.
4. ORDER BY, pernyataan ini digunakan untuk menentukan kriteria pengurutan dari data yang akan ditampilkan.
5. GROUP BY, pernyataan ini digunakan untuk menentukan kolom yang digunakan sebagai pengelompokan data.
Setelah Anda mengetahui pernyataan-pernyataan utama dalam SQL, Anda akan dijelaskan mengenai beberapa teknik untuk mendefinisikan data dalam basis data dengan SQL (DDL). Berikut beberapa teknik untuk mendefinisikan data dalam basis data dengan syntax SQL.
1. Create Database
Create Database adalah statement untuk membuat sebuah basis data baru di server basis data. Syntax untuk melakukannya adalah sebagai berikut.
SQL> CREATE DATABASE DATABASE_NAME:
Berikut contoh penggunaan syntax tersebut.
SQL> CREATE DATABASE Latih;
2. Drop Database
Drop Database adalah statement yang digunakan untuk menghapus basis data yang telah ada. Syntax untuk melakukannya adalah sebagal berikut.
SQL> DROP DATABASE DATABASE_NAME;
Berikut contoh penggunaan syntax tersebut.
SQL> DROP DATABASE Latih;
Catatan:
• Untuk membuat atau menghapus basis data, programmer harus memiliki izin akses level administrator atau administrator privilege.
• Berhati-hati untuk menghapus basis data karena basis data tersebut akan terhapus bersama dengan tabel dan data yang ada di dalamnya.
3. Create Table
Create Table adalah statement yang digunakan untuk membuat tabel baru dalam sebuah basis data. Syntax untuk melakukannya adalah sebagai berikut.
SQL> CREATE TABLE table_name
(
column_name column_data_type,
column_name column_data_type, column_name column_data_type
....
);
Berikut contoh penggunaan syntax tersebut.
SQL> CREATE TABLE Karyawan
(
id INT NOT NULL,
age INT NOT NULL,
first VARCHAR (255),
last VARCHAR (255),
PRIMARY KEY (id)
) ;
4. Drop Table
Drop Table adalah statement yang digunakan untuk menghapus tabel yang ada dalam basis data. Syntax untuk melakukannya adalah sebagai berikut.
SQL> DROP TABLE table_name;
Berikut contoh penggunaan syntax tersebut.
SQL> DROP TABLE Karyawan;
5. Insert Data
Insert Data digunakan untuk menambahkan sebaris data pada kolom-kolom dalam sebuah tabel. Syntax untuk melakukannya adalah sebagai berikut.
SQL> INSERT INTO table_name VALUES (column1, column2, ...);
Berikut contoh penggunaan syntax tersebut.
SQL> INSERT INTO Karyawan VALUES (100, 18, 'Zara', 'Ali');
6. Select Data
Pernyataan SELECT digunakan untuk mengambil data dari basis data. Syntax untuk melakukannya adalah sebagai berikut.
SQL> SELECT column_name, column_name, FROM table_name WHERE conditions;
Tabel di basis data yang menjadi sumber data yang ditampilkan diatur pada klausa FROM. Adapun kriteria dari data yang dimanipulasi diatur pada klausa WHERE. Klausa WHERE dapat menggunakan operator perbandingan seperti =, !=, <, >, <=, dan >=, sama seperti pada operator BETWEEN dan LIKE.
Berikut adalah contoh pernyataan SQL yang akan menampilkan usia serta nama di kolom pertama dan terakhir dari tabel Karyawan, dengan kolom id adalah 100.
SQL> SELECT first, last, age
FROM Karyawan
WHERE id = 100;
Pernyataan SQL berikut memilih usia, kolom pertama dan terakhir dari tabel Karyawan dengan kolom pertama mengandung kata Zara.
SQL> SELECT first, last, age
FROM Karyawan
WHERE first LIKE '%Zara%';
7. Update Data
Update data digunakan untuk melakukan penyimpanan perubahan data. Syntax untuk melakukannya adalah sebagai berikut.
SQL> UPDATE table_name
SET column_name = value, column_name = value, ...
WHERE conditions;
Berikut adalah contoh pernyataan SQL UPDATE yang akan mengubah kolom usia karyawan yang id-nya adalah 100.
SQL> UPDATE Karyawan SET age=20 WHERE id=100;
8. Delete Data
Statement DELETE digunakan untuk menghapus data dari sebuah tabel. Syntax untuk melakukannya adalah sebagai berikut.
SQL> DELETE FROM table_name WHERE conditions;
Berikut adalah contoh pernyataan SQL DELETE yang akan menghapus catatan karyawan yang id-nya 100.
SQL> DELETE FROM Karyawan WHERE id=100;
E. Memahami Langkah Koneksi Java ke Basis Data
Pada subbab ini, akan dijelaskan mengenai cara mengimplementasikan query untuk mengoneksikan Java ke basis data SQL sehingga dapat digunakan dalam pemrograman Java. Beberapa hal yang wajib diketahui dan dipahami oleh programmer dalam melakukan koneksi basis data ke Java adalah membuat basis data dan tabel, melakukan import dan registrasi library java.sql.*, serta mengimplementasikan query dalam pemrograman Java.
Berikut adalah implementasi query dalam pemrograman Java.
1. Membuat sebuah basis data pada server basis data. Aplikasi server basis data yang akan digunakan pada materi ini adalah MySQL DB, dengan urutan langkah sebagai berikut.
a. Membuka aplikasi MySQL DB.
C:\>
C:\>cd Program Files\MySQL\bin
C:\Program Files\MySQL\bin>
b. Login ke dalam server basis data.
C:\Program Files\MySQL\bin>mysql -u root -p
Enter password: ********
mysql>
c. Membuat sebuah basis data pada MySQL
mysql> Create Database Karyawan;
atau
C:\Program Files\MySQL\bin> mysqladmin
create Latih -u root -p
d. Membuat sebuah tabel dengan nama Karyawan.
mysql> use Latih;
mysql> create table Karyawan
->(
-> id int not null,
-> age int not null,
-> first varchar (255),
-> last varchar (255)
-> );
Query OK, 0 rows affected (0.08 sec) mysql>
e. Memasukkan data ke dalam record Karyawan.
mysql> INSERT INTO Karyawan VALUES (100, 18, 'Zara', 'Ali');
Query OK, 1 row affected (0.05 sec)
mysql> INSERT INTO Karyawan VALUES (101, 25, 'Teguh', 'Yusuf');
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO Karyawan VALUES (102, 30, 'Andri', 'Susi');
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO Karyawan VALUES (103, 28, 'Sumi', 'Mita');
Query OK, 1 row affected (0.00 sec)
mysql>
f. Import libray java.sql.* dan lakukan registrasi komponen basis data, langkahnya adalah sebagai berikut.
1). Import packages
Langkah ini dimaksudkan untuk meng-import atau memanggil library Java yang digunakan untuk menghubungkan antara Java dan server basis data. Biasanya digunakan perintah import java.sql.* yang dituliskan pada awal program.
Perhatikan kode program berikut.
//Meng-import package yang diperlukan import java.sql.*;
2). Membuat koneksi
Selanjutnya, dilakukan proses membuat koneksi basis data. Dalam proses ini, perlu dideskripsikan nama driver, alamat driver, serta user dan password dari basis data tersebut.
Perhatikan kode program berikut.
//STEP 1: Meng-import package yang di- perlukan
import java.sql.*;
public class JDBCExample {
//Nama JDBC driver dan URL basis data static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";
static final String DB_URL = "jdbc:mysql://localhost/Latih";
//User dan password basis data
static final String USER = "root";
static final String PASS = "";
Pada kode program tersebut digunakan driver JDBC yang terhubung ke server basis data MySQL, serta nama dari basis data adalah Latih, dengan user adalah root dan password kosong.
Berikut daftar nama driver JDBC yang populer dan URL basis data yang ditampilkan dalam bentuk tabel.
Implementasi koneksi URL dapat menggunakan tiga cara, yaitu sebagai berikut.
a). Menggunakan URL basis data dengan username dan password.
String URL "jdbc:oracle:thin:@
amrood:1521:EMP":
String USER "root":
String PASS = "root":
Connection conn DriverManager.
getConnection (URL, USER, PASS):
b). Hanya mengunakan URL basis data.
String URL =
"jdbc:oracle:thin:username/passwordÄ…
amrood:1521:EMP";
Connection conn = DriverManager.
getConnection (URL);
c). Menggunakan URL basis data dan property object.
import java.util.*;
String URL "jdbc:oracle:thin:8
amrood:1521:EMP":
Properties info new Properties(); info.put("user", "username"); info.put("password", "password");
Connection conn = DriverManager. getConnection (URL, info);
2. Register JDBC driver dan membuka koneksi Bagian ini merupakan proses inisialisasi driver Java yang akan menghubungan antara Java dan basis data.
Perhatikan kode program berikut.
try {
//STEP 2: Register driver JDBC
Class.forName("com.mysql.jdbc.Driver");
//STEP 3: Membuka koneksi
Sistem.out.println("Connecting to a
selected database...");
conn DriverManager.getConnection(DB_URL. URL, PASS);
System.out.println("Connected database successfully...");
Proses mendaftarkan driver dapat dilakukan dengan dua cara, yaitu sebagai berikut.
1) Class.forName()
Pendekatan yang paling umum untuk mendaftarkan driver adalah dengan menggunakan class Java Class.forName(). Metode ini secara dinamis memuat file class driver ke memori, serta memungkinkan driver dapat dikonfigurasi secara portable dalam program.
Berikut contoh penggunaan Class.forName()
try {
Class.forName("oracle.jdbc.driver. OracleDriver");
}
2). Method DriverManager.registerDriver() Pendekatan kedua yang dapat Anda gunakan untuk mendaftarkan driver adalah dengan menggunakan method DriverManager. registerDriver().
Berikut contoh penggunaan DriverManager.registerDriver().
try {
Driver myDriver = new oracle.
jdbc.driver.OracleDriver(); DriverManager.registerDriver(
myDriver):
}
3. Mengeksekusi query dan mengambil data hasil operasi
Bagian ini berisi kumpulan perintah query yang akan dieksekusi oleh program serta penggunaan method ResultSet.getXXX () untuk mengambil data hasil operasi data.
//STEP 4: Mengeksekusi query
System.out.println("Creating
statement...");
stmt conn.createStatement();
String sql = "SELECT id, first, last, age, FROM karyawan";
ResultSet rs = stmt.executeQuery(sql);
4. Menampilkan semua data dan menutup sumber data Bagian ini digunakan untuk menampilkan semua data yang telah dioperasikan, kemudian menutup sumber data tersebut.
Perhatikan kode program berikut.
while (rs.next()) {
//Menampilkan data berdasarkan kolom
int id
rs.getInt("id");
int age rs.getInt("age");
String first rs.getString("first");
String last rs.getString("last");
//Menampilkan nilai
System.out.println("ID: " + id);
System.out.println(",Age:"+age); System.out.println(",First:"+first): System.out.println((",Last: " + last));
}
//Menutup sumber data
rs.close();
F. Implementasi Operasi Data pada Java Database
Pada subbab ini, akan dijelaskan cara membuat basis data menggunakan aplikasi JDBC dengan server basis data MySQL. Langkah-langkah untuk melakukannya adalah sebagai berikut.
1. Membuat Koneksi Java ke Server Basis Data
Untuk mengoneksikan program Java ke server basis data perlu dideskripsikan nama driver, alamat driver, serta user dan password dari basis data tersebut. Selanjutnya, dilakukan registrasi JDBC dan pembukaan koneksi ke basis data. Berikut adalah kode program untuk membuat koneksi Java ke server basis data.
1. //STEP 1. Import required packages
2. import java.sql.*
3.
4. public class create_database {
5. // JDBC driver name and database URL
6. static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";
7. static final String DB_URL = "jdbc:mysql://localhost/";
8.
9. // Database credentials
10. static final String USER = "root":
11. static final String PASS = "";
12.
13. public static void main(String[] args) {
14. Connection conn = null;
15. Statement stmt = null;
16. try {
17. // STEP 2: Register JDBC driver
18. Class.forName("com.mysql.jdbc.Driver");
19.
20. // STEP 3: Open a connection
21. System.out.println("Connecting to database...");
22. conn = DriverManager.getConnection(DB_URL, USER, PASS);
23.
24. // STEP 4: Execute a query
25. System.out.println("Creating database...");
26. stmt = conn.createStatement();
27.
28. String sql "CREATE DATABASE PELAJAR";
29. stmt.executeUpdate(sql);
30. System.out.println("Database created successfully...");
31. } catch (SQLException se) (
32. // Handle errors for JDBC
33. se.printStackTrace();
34. } catch (Exception e) {
35. // Handle errors for Class.forName
36. e.printStackTrace();
37. ) finally {
38. // finally block used to close resources
39. try (
40. if (stmt 1 null)
41. stmt.close();
42. ) catch (SQLException se2) () // nothing we can do
43. try {
44. if (conn != null)
45. conn.close();
46. ) catch (SQLException se) (
47. se.printStackTrace();
48. ) // end finally try
49. // end try
50. System.out.println("Goodbye!");
51. ) // end main
52. // end JDBCExample
Penjelasan kode program tersebut adalah sebagai berikut.
a. Kode program berikut akan menghubungkan Java ke basis data dengan menggunakan driver MySQL. Basis data menggunakan username MySQL root dan password kosong.
public class create_database (
// JDBC driver name and database URL static final String JDBC_DRIVER "com.
mysql.jdbc.Driver"/
static final String DB URL -> "jdbc:mysql://localhost/";
//Database credentials static final String USER "root": static final String PASS":
b. Membuat basis data dengan nama PELAJAR.
//STEP 4: Execute a query
System.out.println("Creating database..."); stmt = conn.createStatement();
String sql = "CREATE DATABASE PELAJAR";
stmt.executeUpdate(sql); System.out.println("Database created successfully...");
Hasil kompilasi kode program tersebut adalah sebagai berikut.
Versi JStudio
Untuk mengecek hasil eksekusi program dapat menggunakan syntax SQL berikut.
mysql> show databases:
+---------------------------------+
| Database |
+---------------------------------+
| pelajar |
| perpus |
| phpmyadmin |
| tutorial |
| tutorial_crud |
| user |
| usernow |
+---------------------------------+
7 rows in set (0.09 sec)
mysql>
2. Membuat Tabel Basis Data
Pada bagian ini, akan dicontohkan cara membuat tabel REGISTRATION dalam basis data Pelajar. Struktur tabel Registration adalah sebagai berikut.
"CREATE TABLE REGISTRATION"
"(id INTEGER not NULL, first VARCHAR(255), +
last VARCHAR(255), +
age INTEGER, +
PRIMARY KEY (id))";
Perhatikan kode program berikut.
1. //STEP 1. Import required packages
2. import java.sql.*;
3.
4. public class JDBCExample (
5. // JDBC driver name and database URL
6. static final String JDBC DRIVER "com.mysql.jdbc.Driver":
7. static final String DB URL-
8. "jdbc:mysql://localhost/Pelajar";
9.
10. // Database credentials
11. static final String USER= "root":
12. static final String PASS=""
13.
14. public static void main(String[] args) (
15. Connection conn = null;
16. Statement stmt = null;
17. try (
18. // STEP 2: Register JDBC driver
19. Class.forName("com.mysql.jdbc.Driver");
20.
21. // STEP 3: Open a connection
22. System.out.println("Connecting to a selected
23. database...");
24. conn = DriverManager.getConnection (DB_URL, USER, PASS);
25. System.out.println("Connected database successfully...");
26.
27. // STEP 4: Execute a query
28. System.out.println("Creating table in given database...");
29. stmt conn.createStatement();
30.
31. String sql "CREATE TABLE REGISTRATION".
32. "(id INTEGER not NULL, +"first VARCHAR(255), "+
33." last VARCHAR(255), +age INTEGER,"
34.PRIMARY KEY (id))";
35.
36. stmt.executeUpdate(sql);
37. System.out.println("Created table in given database...");
38. } catch ( SQLException se) (
39. // Handle errors for JDBC
40. se.printStackTrace(): 41) catch (Exception e) {
42. // Handle errors for Class.forName
43. e.printStackTrace();
44. ) finally (
45. // finally block used to close resources
46. try{
47. if (atmt = null
48. conn.close():
49. ) catch (SQLException se) () // do nothing
50. try {
51. if (conn!= null)
52. conn.close();
53. ) catch (SQLException se) (
54. se.printStackTrace();
55. // end finally try
56. ) // end try
57. System.out.println("Goodbye!");
58. // end main
59. // end JDBCExample
Penjelasan kode program tersebut adalah sebagai berikut
a. Driver JDBC adalah interface untuk menghubungkan program Java ke MySQL, serta nama basis data yang digunakan adalah Pelajar.
// JDBC driver name and database URL
static final String JDBC_DRIVER jdbc.Driver": "com.mysql.
static final String DB_URL"jdbc:mysql:// localhost/Pelajar"
b. Bagian ini berisi syntax SQL yang digunakan untuk membuat tabel dengan nama REGISTRATION.
//STEP 4: Execute a query
System.out.println("Creating table in given database...");
stmt. conn.createStatement();
String sql "CREATE TABLE REGISTRATION
( id INTEGER not NULL, first VARCHAR(255),
last VARCHAR(255),
age INTEGER,+ "PRIMARY KEY (id))"
stmt.executeUpdate(sql);
Hasil kompilasi kode program tersebut adalah sebagai benkst
Versi JStudio
Untuk melihat hasil pembuatan tabel tersebut, gunakan syntax SQL berikut.
3. Memasukkan Data ke dalam Tabel
Pada bagian ini, akan dicontohkan cara memasukkan data ke dalam tabel. Data yang akan dimasukkan ke dalam tabel Registration sejumlah empat record.
Perhatikan kode program berikut.
1 //STEP 1. Import required packages
2 import java.sql.*;
3
4 public class insert data
5 // JDBC driver name and database URL
6 static final String JDBC DRIVER
7 static final String DB URL "com.mysql.jdbc.Driver": "jdbc:mysql://localhost/Pelajar":
8
9 // Database credentials
10 static final String USER "root":
11 static final String PASS
12
13 public static void main(Stringil arga) I
14 Connection conn nulla
15 Statement stat nulla
16 try {
17// STEP 2: Register JDBC driver
18 Class.forName("com.mysql.jdbc.Driver"):
19
20 // STEP 3: Open a connection
21 System.out.println("Connecting to a selected database...
22 conn DriverManager.getConnection(DB URL, USER, FABS):
23 System.out.println("Connected database successfully...");
24
25 // STEP 4: Execute a query
26 System.out.println("Inserting records into the table...");
27 stmt conn.createStatement();
28
29 String sql "INSERT INTO Registration
30 "VALUES (100, 'Zara', 'Ali', 18)";
31 stmt.executeUpdate (sql);
32 sql = "INSERT INTO Registration
33 "VALUES (101, 'Teguh', 'Yusuf', 25)";
34 stmt.executeUpdate (sql);
35 sql "INSERT INTO Registration" +
36 "VALUES (102, 'Andri', 'Susi', 30)";
37 stmt.executeUpdate (sql);
38 sql = "INSERT INTO Registration +
39 "VALUES (103, 'Sumi', 'Mita', 28)";
40 stmt.executeUpdate(sql);
41 System.out.println("Inserted records into the table...");
42
43} catch (SQLException se) {
44 // Handle errors for JDBC
45 se.printStackTrace();
46) catch (Exception e) {
47 // Handle errors for Class.forName
48 e.printStackTrace();
49) finally (
50 // finally block used to close resources
51 try {
52 if (stmt != null)
53 conn.close();
54 catch (SQLException se) () // do nothing
55 try {
56 if (conn != null)
57 conn.close();
58 catch (SQLException se) |
59 se.printStackTrace();
60 // end finally try
61 // end try
62 System.out.println("Goodbye!");
63 // end main
64) // end JDBCExample
Syntax program berikut digunakan untuk memasukkan data ke dalam record.
stmt conn.createStatement():
String sql "INSERT INTO Registration
"VALUES (100, Zara', 'Ali', 18)",
stmt.executeUpdate(sql);
"VALUES (101, 'Teguh', 'Yusuf', 25)":
stmt.executeUpdate(sql);= " INSERT INTO Registation " +
"VALUES (102, 'Andri', 'Susi", 30)";
stmt.executeUpdate(sql);
sql "INSERT INTO Registration" +
"VALUES (103, 'Sumi', 'Mita", 281";
stmt.executeUpdate(sql); System.out.println("Inserted records into the table...");
Syntax SQL tersebut diwujudkan dalam sebuah variabel string yang selanjutnya dieksekusi oleh program melalui sebuah statement dengan nama stmt. Statement tersebut dieksekusi empat kali, sesuai dengan jumlah data yang akan dimasukkan ke dalam record.
Hasil kompilasi kode program tersebut adalah sebagai berikut.
Untuk melihat data yang telah dimasukkan ke dalam tabel Registration, gunakan syntax berikut.
4. Memilih Data dari tabel untuk Ditampilkan
Pada bagian ini, akan dicontohkan cara menampilkan beberapa data dengan menggunakan perintah SELECT.
Perhatikan kode program berikut.
1.//STEP 1. Import required packages
2 import java.sql.*;
3
4.public class select_data [
5 // JDBC driver name and database URL
6 static final String JDBC_DRIVER =
7 "com.mysql.jdbc.Driver"/
8 static final String DB URL
9"jdbc:mysql://localhost/Pelajar":
10
11 // Database credentials
12 static final String USER "root":
13 static final String PASS
14
15 public static void main(String[] args) {
16 Connection conn null:
17 Statement stmt null,
18 try {
19// STEP 2: Register JDBC driver
20 Class.forName("com.mysql.jdbc.Driver"); 21
22 // STEP 3: Open a connection
23 System.out.println("Connecting to a selected
24 database...");
25conn=DriverManager.getConnection(DB_URL, USER, 26 PASS);
27 System.out.println("Connected database
28 successfully...")r
29
30 // STEP 4: Execute a query
31 System.out.println("Creating statement...");
32 stmt conn.createStatement();
33
34 String sql Registration": "SELECT id, first, last, age FROM
35 ResultSet rs stmt.executeQuery(sql);
36
37 // STEP 5: Extract data from result set
38 while (rs.next()) (
39// Retrieve by column name
40 int id rs.getInt("id");
41 int agers.getInt("age");
42 String first rs.getString("first");
43 String last rs.getString("last");
44
45 // Display values
46 System.out.print("ID: " + id);
47 System.out.print(", Age: " + age);
48 System.out.print(", First: " + first);
49 System.out.println(", Last: "+ last):
50 }
51 rs.close();
52) catch (SQLException se) I
53 // Handle errors for JDBC
54 se.printStackTrace();
55 catch (Exception e) |
56// Handle errors for Class.forName
57 e.printStackTrace();
58) finally {
59// finally block used to close resources
60 try {
61 if (stmt - null)
62 conn.close();
63 } catch (SQLException se) () // do nothing
64 try }
65 if (conn = null)
66 conn.close();
67 } catch (SQLException se) (
68 se.printStackTrace(); 69// end finally try
70 } // end try
71 System.out.println("Goodbye!");
72 } // end main
73 } // end JDBCExample
Penjelasan kode program tersebut adalah sebagai berikut. Semua data yang terdapat pada tabel Registration akan ditampilkan tanpa terkecuali, dengan menggunakan perintah
SELECT.
// STEP 4: Execute a query
System.out.println("Creating statement...");
stet conn.createStatement():
String sql "SELECT id, first, last, age FROM Registration": ResultSet rs stmt.executeQuery(sql);
// STEP 5: Extract data from result set
while (rs.next()) {
// Retrieve by column name
int id int age rs.getInt("id"); rs.getInt("age"); rs.getString("first"); rs.getString("last"); String first String last
// Display values
System.out.print("ID:+id); System.out.print(", Age: System.out.print(", First: age); first): System.out.println(", Last: last),
Hasil kompilasi kode program tersebut adalah sebagai berikut.
5. Melakukan Operasi UPDATE, DELETE, WHERE, dan LIKE
a. Update data
Pada STEP 4 dilakukan update data dengan data age 300, pada id = 100 dan id = 101. Untuk melakukannya, perhatikan kode program berikut.
//STEP 4: Execute a query System.out.println("Creating statement...")! conn.createStatement():
String sql "UPDATE Registration "SET age 300 WHERE id in (100, 101)";
stmt.executeUpdate(aqiiz
// Now you can extract sil the recorde
// to see the updated recorda sql "SELECT id, first, last, age
Registration"
ResultSet rs = stmt.executeQuery (sql) ;
Hasil kompilasi kode program tersebut adalah sebagai berikut.
b. Menghapus data
Ubahlah STEP 4 untuk menghapus data pada tabel Registration. Sebagai contoh, lakukan penghapusan data dengan id = 101. Untuk melakukannya, perhatikan kode program berikut.
//STEP 4: Execute a query System.out.println("Creating statement..."); stmt = conn.createStatement(); String sql "DELETE FROM Registration + "WHERE id = 101"; "
stmt.executeUpdate(sql);
// Now you can extract all the records // to see the remaining records sql = "SELECT id, first, last, age FROM Registration";
ResultSet IS stmt.executeQuery(sql);
Hasil kompilasi kode program tersebut adalah sebagai berikut.
c. Memilih data dengan menggunakan klausa WHERE. Klausa WHERE digunakan untuk menentukan kriteria dari data yang dimanipulasi. Berikut contoh penggunaan klausa WHERE pada STEP 4 untuk menampilkan data pada id = 100.
//STEP 4: Execute a query System.out.println("Creating statement..."); stmt conn.createStatement();
String sql = "SELECT id, first, last, age FROM Registration "+ "WHERE id 100"; ResultSet rs stmt.executeQuery(sql);
Hasil kompilasi kode program tersebut adalah sebagai berikut.
d. Menggunakan klausa LIKE
Klausa LIKE digunakan untuk menampilkan record yang memenuhi pola yang diberikan. Berikut contoh penggunaan klausa LIKE pada STEP data yang memenuhi %za%. 4 untuk menampilkan
//STEP 4: Execute a query
tem.out.println("Crying statement... String sql = "SELECT id, first, last, age FROK conn.createStatement();
Registration WHERE first LIKE 'za" ResultSet rs = stmt.executeQuery(sql);
Hasil kompilasi kode program tersebut adalah sebagai berikut.
.png)



.jpeg)
















