PENDAHULUAN Latar Belakang
Semakin berkembangnya kehidupan manusia, kebutuhan penunjang pekerjaan manusia pun semakin meningkat. Banyaknya pekerjaan-pekerjaan yang menuntut manusia untuk bekerja secara cepat, tepat, dan akurat. Karena kesulitan tersebut membuat manusia berfikir untuk membuat suatu aplikasi yang dapat mempermudah pekerjaan tersebut. Contohnya dalam hal pengelolaan tabel untuk proses pengajaran yaitu pengelolaan tabel mahasiswa, tabel buku, tabel nilai. Dengan didukung perkembangan teknologi, kesulitan tersebut dapat diatasi dengan melalui MySQL. Dengan aplikasi MySQL ini dapat mengolah sebuah tabel dengan menggunakan Data Manipulation Language (DML). Data Manipulation Language ini mempermudah kita dalam pengelolaan tabel kerja, sehingga tabel tersebut dapat terorganisir dengan secara cepat dan akurat..
Tujuan MahasiswamemahamisintaksperintahpadaMySQLuntukmenambah,mengu bahdanmenghapusrecordpadatabel.
1
TEORI Strutured Query Language (SQL) adalah perintah-perintah yang digunakan untuk membuat, mengubah, menghapus dan menampilkan record tabel dari suatu database.
1. INSERT Merupakan perintah yang digunakan untuk menambah record ke dalam tabel. Sintaks untuk menambah record : INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE] [INTO] tbl_name [(col_name,...)] VALUES ({expr | DEFAULT},...),(...),... [ ON DUPLICATE KEY UPDATE col_name=expr , ... ] Misalnya terdapat tabel Barang sebagai berikut : Field Tipe Data Kode_barang INT Nama_barang VARCHAR(30) Harga INT Stock INT
Keterangan PRIMARY KEY
Untuk menambahkan data pada tabel tersebut, maka perintah yang diketikkan adalah : INSERT INTO barang (kode_barang,nama_barang,harga,stock) VALUES(1,’Gerry Choco’,3000,34); atau INSERT INTO barang VALUES(1,’Gerry Choco’,3000,34);
Untuk melihat data yang telah ditambahkan ke dalam tabel, ketikkan perintah berikut ini : SELECT * FROM barang
Perintah ON DUPLICATE KEY UPDATE digunakan mengubah beberapa kolom dengan nilai baru apabila terdapat kolom unik yang disisipkan lebih dari sekali. Contoh jika terdapat penyisipan data barang lagi dengan kunci yang sama, maka harga akan dinaikan 500, maka perintah INSERT adalah sebagai berikut : INSERT INTO barang VALUES (1,'’Gerry Choco',3000,34)
ON DUPLICATE KEY UPDATE harga=harga+500;
Penambahan record bisa dilakukan untuk beberapa record sekaligus, sperti contoh berikut:
2
INSERT INTO barang VALUES (2,'’the Kepala Jenggot',3000,45),
VALUES (3,'Timtam',2000,40)
2. UPDATE Perintah ini digunakan untuk mengubah record yang sebelumnya sudah disisipkan. Perintah untuk mengubah data suatu record adalah sebagai berikut : UPDATE [LOW_PRIORITY] [IGNORE] tbl_name SET col_name1=expr1 [, col_name2=expr2 ...] [WHERE where_condition] [ORDER BY ...] [LIMIT row_count]
Perintah update bisa terdiri dari satu atau beberapa kolom yang ingin diubah. Perubahan suatu record akan tergantung kepada clausa WHERE. Setiap record yang memenuhi clausa WHERE akan diupdate. ORDER BY akan mengurutkan proses update data berdasarkan olom yang dimasukan ke dalam clausa tersebut. LIMIT akan membatasi jumlah record yang akan diubah. Berikut ini adalah contoh dari perintah update : UPDATE barang SET harga=2000 WHERE kode_barang=2
Perintah diatas akan mengubah harga dari barang berkode 2 menjadi 2000. Jika ingin mengubah beberapa kolom, misalnya nama dan stock, maka bisa dilakukan dengan perintah sebagai berikut : UPDATE barang SET nama_barang=’Lipton Tea’,stock=80
WHERE kode_barang=2
3. DELETE Perintah DELETE digunakan untuk menghapus record dalam suatu tabel. Perintah untuk menghapus record adalah sebagai berikut : DELETE [WHERE [ORDER [LIMIT
[LOW_PRIORITY] [QUICK] [IGNORE] FROM tbl_name where_condition] BY ...] row_count]
3
Perintah delete bisa terdiri dari satu atau beberapa kolom yang akan dihapus. Penghapusan suatu record akan tergantung kepada clausa WHERE. Setiap record yang memenuhi clausa WHERE akan dihapus. ORDER BY akan mengurutkan proses penghapusan data berdasarkan kolom yang dimasukkan ke dalam clausa tersebut. LIMIT akan membatasi jumlah record yang akan dihapus. Contoh perintah untuk menghapus barang dengan harga di bawah 3000 adalah sebagai berikut : DELETE FROM barang WHERE harga<3000
4
HASIL DAN PEMBAHASAN A. Hasil Percobaan
Berikut ini beberapa percobaan yang dilakukan di Lab dengan lebih mengambil soal latihan pada modul 2. Percobaan 1 : Membuat suatu database baru dengan nama “prak2”. Sintaks CREATE DATABASE prak2; atau CREATE DATABASE IF NOT EXISTS prak2;
Percobaan 2 : Buatlah tabel buku dengan struktur sebagai berikut : Field Tipe Data ISBN VARCHAR(12) Judul VARCHAR(50) jumlah_halaman TINYINT Harga INT Penerbit VARCHAR(20)
Keterangan PRIMARY KEY
Sintaks CREATE TABLE buku ( ISBN VARCHAR(12), judul VARCHAR(50), jumlah_halaman TINYINT, harga INT, penerbit VARCHAR(20), PRIMARY KEY(ISBN) );
5
Percobaan 3 : Coba untuk menambahkan data berikut kedalam tabel tersebut!
ISBN 1111 2222 3333 4444 5555
Judul Dunia Sophie The Lost Symbol To Kill a Morcking Bird The Secret Piano di Tepi Pantai
Jumlah_halaman Harga 765 80000 867 90000 687 78000 687 60000 859 45000
Penerbit Mizan Gramedia Gramedia Gramedia Andi
*Karena tipe data dari jumlah_halaman TINYINT dengan maksimal angka hanya 127 sedangkan jumlah_halaman melebihi batas TINYINT, sehingga tipe datanya perlu dirubah terlebih dahulu. Sintaks ALTER TABLE buku MODIFY jumlah_halaman INT; Hasil
Setelah tipe data berubah, data dapat diinputkan ke dalam tabel.
6
Berikut adalah tabel buku yang berhasil dibuat :
Percobaan 4 : Ubah data penerbit menjadi “Gramedia Pustaka” dari semua buku yang penerbitnya adalah “Gramedia”. Sintaks UPDATE buku SET penerbit = ‘Gramedia Pustaka’ WHERE penerbit = ‘Gramedia’;
Hasil
Percobaan 5 : Turunkan harga 3 buku termahal sebanyak 10%.
Sintaks UPDATE buku SET harga=harga-(harga*10)/100 ORDER BY harga DESC LIMIT 3; Hasil
7
Percobaan 6 : Ubah judul, jumlah halaman dan harga buku dengan ISBN 2222 menjadi “The Da Vinci Code”, “643”, dan “75000”.
Sintaks UPDATE buku SET judul = ‘The Davinci Code’, jumlah_halaman = 643, harga =75000 WHERE ISBN = ‘2222’;
Hasil
Percobaan 7 :
Hapuslah semua buku yang diterbitkan oleh Andi dengan jumlah halaman yang kurang dari 300. Sintaks DELETE FROM buku WHERE penerbit =’Andi’ && jumlah_halaman <300; Hasil
Karena buku dengan penerbit “Andi” dan jumlah_halaman < 300 tidak terpenuhi maka tidak ada tuple/baris yang dihapus.
Percobaan 8 :
Hapuslah 2 buku yang paling murah yang diterbitkan oleh “Gramedia Pustaka”. Sintaks DELETE FROM buku WHERE penerbit = ‘Gramedia Pustaka’ ORDER
BY harga ASC LIMIT 2;
8
Hasil
B. Analisis Hasil Percobaan Q1 : INSERT INTO barang (kode_barang,nama_barang,harga,stock) VALUES(1,’Gerry Choco’,3000,34); atau INSERT INTO barang VALUES(1,’Gerry Choco’,3000,34);
Apakah perbedaan antara perintah 1 dan perinta kedua pada cara penambahan data diatas? Jawab : Perintah Pertama kita menentukan baris data yang masuk berada dimana seperti angka 1 mewakili kode_barang, Gerry Choco mewakili nama_barang, dan seterusnya. Sedangkan perintah Kedua baris data yang masuk langsung diinputkan dari kolom kiri ke kolom kanan, apa bila terjadi kesalahan seumpama angka 1 ternyata diketik pada bagian nama_barang, maka input akan mengalami error. Q2 : UPDATE barang SET harga=2000 WHERE kode_barang=2 Apakah jadinya jika clausa WHERE dihilangkan pada perintah di atas?
Jawab : Bila clausa WHERE dihilangkan, maka semua data pada tabel harga akan di set menjadi 2000, bukan hanya yang memiliki kode_barang = 2. Q3 : Cobalah untuk menaikan semua kode barang sebesari 1.
Jawab : UPDATE tb_barang SET kode_barang=kode_barang+1 ORDER BY kode_barang DESC;
9
Penggunaan increment atau penambahan 1 secara manual, kita pertama mengurutkan kode paling terbesar terlebih dahulu , lalu ditambahkan 1 agar tidak terjadi DUPLICATE PRIMARY KEY karena kode_barang merupakan PRIMARY KEY Q4 : Cobalah untuk menghapus 5 barang dengan harga tertinggi!
Jawab : DELETE FROM tb_barang ORDER BY harga DESC LIMIT 5; Menggunakan fungsi DELETE yang terlebih dahulu harga disusun dari besar ke kecil dengan cara melakukan fungsi DESC (Descending) lalu gunakan query LIMIT 5 untuk membatasi 5 Baris Data yang akan di hapus
10
KESIMPULAN
Kesimpulan dari laporan praktikum ini adalah sebagai berikut : Dengan adanya DML (Data Manipulation Language) seorang Database Administrator dapat: · Mengisi struktur dari tabel, yaitu menambah data berdasarkan kolom yang ada pada tabel · Mengatur struktur penyimpanan tabel, yaitu perubahan atau penghapusan data pada tabel · Manajemen data, yaitu melakukan manajemen berkas fisik menjadi bentuk data dalam tabel
11
DAFTAR PUSTAKA
Arbie,2004, “Manajemen Database dengan MYSQL” . Yogyakarta:Penerbit Andi Yogyakarta.
Yakub, 2008, “ Sistem Basis Data : Tutorial Konsep “. Graha Ilmu: Yogyakarta.
Suja, Imam,2005, ” Pemrograma n SQL dan Database Server MySQL”.Yogyakarta .
12
LAMPIRAN
1. Membuat suatu database baru dengan nama “prak2”.
2. Buatlah tabel buku dengan struktur sebagai berikut : Field Tipe Data ISBN VARCHAR(12) Judul VARCHAR(50) jumlah_halaman Harga Penerbit
Keterangan PRIMARY KEY
TINYINT INT VARCHAR(20)
3. Coba untuk menambahkan data berikut kedalam tabel tersebut! ISBN Judul Jumlah_halaman Harga 1111 Dunia Sophie 765 80000 2222 The Lost Symbol 867 90000 3333 To Kill a Morcking Bird 687 78000 4444 The Secret 687 60000 5555 Piano di Tepi Pantai 859 45000
Penerbit Mizan Gramedia Gramedia Gramedia Andi
*Karena tipe data dari jumlah_halaman TINYINT dengan maksimal angka hanya 127 sedangkan jumlah_halaman melebihi batas TINYINT, sehingga tipe datanya perlu dirubah terlebih dahulu.
13
Sintaks ALTER TABLE buku MODIFY jumlah_halaman INT; Hasil
Setelah tipe data berubah, data dapat diinputkan ke dalam tabel.
Berikut adalah tabel buku yang berhasil dibuat :
4. Ubah data penerbit menjadi “Gramedia Pustaka” dari semua buku yang penerbitnya adalah “Gramedia”.
14
5. Turunkan harga 3 buku termahal sebanyak 10%.
6. Ubah judul, jumlah halaman dan harga buku dengan ISBN 2222 menjadi “The Da Vinci Code”, “643”, dan “75000”.
7. Hapuslah semua buku yang diterbitkan oleh Andi dengan jumlah halaman yang kurang dari 300.
15
Karena buku dengan penerbit “Andi” dan jumlah_halaman < 300 tidak terpenuhi maka tidak ada tuple/baris yang dihapus.
8. Hapuslah 2 buku yang paling murah yang diterbitkan oleh “Gramedia Pustaka”.
16