Anda di halaman 1dari 10

ISI MODUL PRAKTIKUM :

 Materi kueri INSERT pada tabel


 Materi kueri UPDATE pada tabel
 Materi kueri DELETE pada tabel
 Materi Kueri Perubahan Struktur Tabel Existing
 Lembar Kerja Praktikum 1

Modul Praktikum Bahasa Query 11


Terstruktur
MODUL MATERI PRAKTIKUM

PRAKTIK
1.1 TUJUAN
Setelah mengikuti praktikum ini mahasiswa diharapkan dapat:
1. Mempraktekkan tambah data baru ke dalam tabel

UM 2
2. Mempraktekkan ubah data yang sudah tersimpan dalam tabel sesuai dengan
kondisi kasus
3. Mempraktekkan hapus data dalam tabel sesuai dengan kondisi kasus

BAHASA
1.2 ALAT & BAHAN
Alat & Bahan Yang digunakan adalah hardware perangkat PC beserta Kelengkapannya

KUERI
dengan Software XAMPP dan SQLYog yang telah terinstall pada masing-masing
PC/Laptop

1.3 DASAR TEORI

TERSTR
Berikut adalah perintah-perintah yang termasuk ke dalam DML (Welling & Thomson,
2004):

UKTUR
NO JENIS
Tabel Perintah Data Manipulation Language

KETERANGAN STATEMENT SQL


PERINTAH
1 Inserting data Perintah untuk INSERT INTO nama_tabel
menambah baris data (nama_kolom1, nama_kolom2,
dalam tabel nama_kolom3,.........)
VALUES (nilai1,nilai,2,nilai3,......);

Keterangan:
Pada format perintah ini susunan nilai yang diinput
sesuai dengan susunan nama kolom
Atau
INSERT INTO nama_tabel
VALUES (nilai1, nilai2, nilai3,…….);

Keterangan:
Pada format perintah ini susunan nilai yang akan
dimasukkan dalam tabel harus sesuai dengan susunan
kolom pada struktur tabel yang telah terbentuk

2 Updating Perintah untuk UPDATE nama_tabel


Data mengubah data yang SET nama_kolom1=nilai_baru1,
telah tersimpan nama_kolom2=nilai_baru 2,
dalam tabel di …….
database WHERE kondisi_data_yang_diubah

Keterangan:
Pada bagian klausa WHERE perlu diperhatikan kondisi
data apa yang akan diubah sehingga
perubahan data hanya pada baris data tertentu,
namun apabila tanpa klausa WHERE maka
perubahan data akan berpengaruh terhadap semua
baris dalam tabel
3 Deleting Data Perintah untuk DELETE FROM nama_tabel
menghapus data dalam WHERE kondisi_data_yang_diubah
tabel
Keterangan:

Modul Praktikum Bahasa Query 12


Terstruktur
Pada bagian klausa WHERE perlu diperhatikan kondisi
data apa yang akan dihapus sehingga data yang terhapus
hanya pada baris data tertentu, namun apabila tanpa
klausa WHERE maka data yang terhapus adalah semua
baris dalam tabel

1.3.1 INSERT Statement

Penambahan data dapat dilakukan dengan perintah sebagai berikut:


INSERT INTO nama_tabel (nama_kolom1, nama_kolom2, nama_kolom3,......)
VALUES (nilai1,nilai,2,nilai3,....);

Contoh:

Melakukan input data ke tabel Kue pada database AnandaPembelian sehingga tabel
yang dihasilkan adalah sebagai berikut :
Tabel Data Kue

Kode_Kue Nama_Kue Harga_Satuan


ORIG Brownies Original 26000

BABZ Brownies Banana Bizz 30000

BLUE Brownies Blueberry 32000

CHCR Brownies Cheese Cream 52000

Maka perintah DML untuk mendapatkan tabel dengan isi data diatas adalah sebagai

INSERT INTO kue (kode_kue, nama_kue,harga_satuan) VALUES (‘ORIG’,’Brownies


Original’,26000);
INSERT INTO kue (harga_satuan,kode_kue, nama_kue) VALUES (30000,‘BABZ’, ’Brownies
Banana Bizz’);

berikut:
Keterangan kueri:

Pada format perintah DML INSERT di atas susunan nilai yang diinput harus sesuai
dengan susunan nama kolom yang didefinisikan pada perintah tersebut.

INSERT INTO kue (kode_kue, nama_kue) VALUES (‘BLUE’, ’Brownies Blueberry’);

Keterangan kueri:
Pada format perintah DML INSERT digunakan untuk menginput tidak semua kolom
pada tabel Kue

INSERT INTO kue VALUES (‘CHCR’, ’Brownies Cheese Cream’,52000);

Modul Praktikum Bahasa Query 13


Terstruktur
Keterangan kueri:
Pada format perintah DML INSERT diatas susunan nilai yang diinput harus sesuai
dengan susunan nama kolom pada struktur tabel yang telah dibuat

1.3.2 UPDATE Statement


Perubahan data dapat dilakukan dengan perintah sebagai berikut:
UPDATE nama_tabel
SET nama_kolom1=nilai_baru1, nama_kolom2=nilai_baru 2, …….
WHERE kondisi_data_yang_diubah

Contoh:
Berdasarkan tabel kue di bawah ini, lakukan perubahan data harga untuk kue Brownies
Blueberry menjadi Rp 32.000,- ‘’.

Tabel Data Kue Sebelum Perubahan

Kode_Kue Nama_Kue Harga_Satuan


ORIG Brownies Original 26000

BABZ Brownies Banana Bizz 30000

BLUE Brownies Blueberry null

CHCR Brownies Cheese Cream 52000

Berdasarkan permasalahan diatas, yang menjadi kondisi data yang diubah adalah : kue
dengan kode BLUE. Maka perintah DML untuk mengubah data dalam tabel pelanggan
sesuai dengan permasalahan diatas adalah sebagai berikut:

UPDATE kue
SET harga_satuan=32000
WHERE kode_kue=’BLUE’;

Tabel hasil dari perintah DML diatas adalah sebagai berikut:


Tabel Data Kue Setelah Perubahan

Kode_Kue Nama_Kue Harga_Satuan


ORIG Brownies Original 26000
BABZ Brownies Banana Bizz 30000
BLUE Brownies Blueberry 32000
CHCR Brownies Cheese Cream 52000

1.3.3 DELETE Statement

Menghapus data dapat dilakukan dengan perintah sebagai berikut:

Modul Praktikum Bahasa Query 14


Terstruktur
DELETE FROM nama_tabel
WHERE kondisi_data_yang_diubah

Contoh:
Berdasarkan tabel kue di bawah ini, lakukan hapus data kue dengan kode kue
‘BLUE’.
Tabel Data Kue sebelum dihapus
Kode_Kue Nama_Kue Harga_Satuan
ORIG Brownies Original 26000
BABZ Brownies Banana Bizz 30000
BLUE Brownies Blueberry 32000
CHCR Brownies Cheese Cream 52000

DELETE FROM kue


WHERE kode_kue =’BLUE’;

Tabel hasil dari perintah DML diatas adalah sebagai berikut:


Tabel Data Kue Setelah Dihapus

Kode_Kue Nama_Kue Harga_Satuan


ORIG Brownies Original 26000
BABZ Brownies Banana Bizz 30000
CHCR Brownies Cheese Cream 52000

Modul Praktikum Bahasa Query 15


Terstruktur
LEMBAR KERJA PRAKTIKUM

Diketahui relasi tabel dari database AnandaPembelian berdasarkan tugas praktikum 1 pada pertemuan Minggu
ke-2.

Dengan menggunakan database tersebut lakukan langkah-langkah kueri berdasarkan soal


berikut:

Modul Praktikum Bahasa Query 16


Terstruktur
NO Langkah/Soal Jawaban/Cara
1 Gunakan basis data AnandaPembelian yang telah dibuat pada USE AnandaPembelian022;
tugas praktikum 1

2 Masukkan data berikut pada tabel kue INSERT INTO Kue (Kode_Kue, Nama_Kue,
Kode_Kue Nama_Kue Harga_Satuan harga_satuan)
ORIG Brownies 26000 VALUES ('ORIG', 'Brownies Original', 26000);
Original INSERT INTO Kue (Kode_Kue, Nama_Kue,
BABZ Brownies 30000 harga_satuan)
Banana Bizz VALUES ('BABZ', 'Brownies Banana Bizz',
BLUE Brownies 32000 30000);
Blueberry INSERT INTO Kue (Kode_Kue, Nama_Kue,
CHCR Brownies 52000 harga_satuan)
Cheese Cream VALUES ('BLUE', 'Brownies Blueberry', 32000);
INSERT INTO Kue (Kode_Kue, Nama_Kue,
harga_satuan)
VALUES ('CHCR', 'Brownies Cheese Cream',
30000);

3 Masukkan data berikut ke dalam tabel BOM INSERT INTO BOM (Kode_Kue,
Kode_Kue Bhn_baku Harga_Satuan Kode_Bhn_Baku, Jumlah)
ORIG CO1 300 VALUES ('ORIG', 'CO1', 300);
ORIG CO2 75 INSERT INTO BOM (Kode_Kue,
Kode_Bhn_Baku, Jumlah)
VALUES ('ORIG', 'CO2', 75);

4 Pesan error apa yang muncul pada nomor 22? Tuliskan Error Code : 1452
penyebab error yang muncul! Cannot add or update a child
row: a foreign key constraint
fails
(`anandapembelian022`.`bom`,
CONSTRAINT `fk_bom2` FOREIGN
KEY (`Kode_Bhn_Baku`)
REFERENCES `bahan_baku`
(`Kode_Bhn_Baku`))

Error tersebut muncul karena pada tabel


BOM yang merupakan tabel relasi
terdapat kolom Kode_Bhn_Baku yang
mengacu dari tabel bahan_baku, namun
tabel bahan_baku belum dibuat.

5 M asukkan data berikut ke dalam tabel bahan_baku: INSERT INTO bahan_baku (Kode_Bhn_Baku,
Kode_bhn_baku Nama_bhn_baku satuan Nama_Bhn_Baku, satuan)
CO1 Cokelat Masak Hitam Gram VALUES ('CO1', 'Cokelat Masak Hitam', 'Gram');
CO2 Cokelat Bubuk On INSERT INTO bahan_baku (Kode_Bhn_Baku,
CO3 Cokelat Gram Nama_Bhn_Baku, satuan)
ME1 Mentega On
VALUES ('CO2', 'Cokelat Bubuk', 'On');
GR1 Garam Gram
INSERT INTO bahan_baku (Kode_Bhn_Baku,
Nama_Bhn_Baku, satuan)
VALUES ('CO3', 'Cokelat', 'Gram');
INSERT INTO bahan_baku (Kode_Bhn_Baku,
Nama_Bhn_Baku, satuan)
VALUES ('ME1', 'Mentega', 'On');
INSERT INTO bahan_baku (Kode_Bhn_Baku,
Nama_Bhn_Baku, satuan)
VALUES ('GR1', 'Garam', 'Gram');

6 M asukkan data berikut ke dalam tabel BOM: INSERT INTO BOM (Kode_Kue,
Kode_kue Bhn_baku Jumlah Kode_Bhn_Baku, Jumlah)

Modul Praktikum Bahasa Query 17


Terstruktur
ORIG CO1 300 VALUES ('ORIG', 'CO1', 300);
ORIG CO2 7 INSERT INTO BOM (Kode_Kue,
ORIG ME1 5 Kode_Bhn_Baku, Jumlah)
BABZ CO1 350 VALUES ('ORIG', 'CO2', 7);
BABZ ME1 1
INSERT INTO BOM (Kode_Kue,
BLUE CO1 250
Kode_Bhn_Baku, Jumlah)
VALUES ('ORIG', 'ME1', 5);
INSERT INTO BOM (Kode_Kue,
Kode_Bhn_Baku, Jumlah)
VALUES ('BABZ', 'CO1', 350);
INSERT INTO BOM (Kode_Kue,
Kode_Bhn_Baku, Jumlah)
VALUES ('BABZ', 'ME1', 1);
INSERT INTO BOM (Kode_Kue,
Kode_Bhn_Baku, Jumlah)
VALUES ('BLUE', 'CO1', 250);

7 U bah data pada tabel kue untuk kue yang bernama ‘Brownies UPDATE Kue SET Nama_Kue = 'Brownies
Cheese Cream’ diubah menjadi ‘Brownies Cheeze’ Cheeze' WHERE Kode_Kue = 'CHCR';

8 U bah data pada tabel bahan_baku untuk bahan baku yang UPDATE bahan_baku SET satuan = 'Ons'
memiliki satuan ‘on’ diubah menjadi ‘ons’ WHERE Kode_Bhn_Baku = 'CO2';
UPDATE bahan_baku SET satuan = 'Ons'
WHERE Kode_Bhn_Baku = 'ME1';

9 U bah data pada tabel BOM untuk baris data yang mengandung UPDATE BOM SET Kode_Bhn_Baku = 'CO3'
Bhn_baku ‘CO1’ atau ‘CO2’ diubah menjadi CO3. WHERE Kode_Bhn_Baku = 'CO1';

10 H apus data pada tabel BOM yang memiliki kode_kue ORIG DELETE FROM BOM WHERE Kode_Kue = 'ORIG'
yang memiliki jumlah kurang dari 100 AND Jumlah<100;

11 H apus data pada tabel BOM untuk data yang memiliki DELETE FROM BOM WHERE Kode_Kue = 'BABZ'
kode_kue ‘BABZ’ yang memiliki kode_bhn_baku ‘ME1’ AND Kode_Bhn_Baku = 'ME1';

12 M asukkan data berikut ke dalam tabel Pemasok: INSERT INTO Pemasok (Kode_Pemasok,
Kode_pemasok Nama_pemasok Nama_Pemasok)
SP010 PT.Maju Mundur Jaya VALUES ('SP010', 'PT. Maju Mundur Jaya');
SP011 Toko Pa Udin INSERT INTO Pemasok (Kode_Pemasok,
Nama_Pemasok)
VALUES ('SP011', 'Toko Pa Udin');

13 M asukkan data berikut ke dalam tabel Akun: INSERT INTO Akun (Kode_Akun, Nama_akun,
Kode_akun Nama_akun Header_akun Header_akun)
AK001 Kas Pendapatan AK001 VALUES ('AK001', 'Kas Pendapatan', 'AK001');
AK002 Kas Toko AK003 INSERT INTO Akun (Kode_Akun, Nama_akun,
AK003 Kas Kecil AK002 Header_akun)
AK004 Akun Piutang AK001
VALUES ('AK002', 'Kas Toko', 'AK003');
INSERT INTO Akun (Kode_Akun, Nama_akun,
Header_akun)
VALUES ('AK003', 'Kas Kecil', 'AK002');
INSERT INTO Akun (Kode_Akun, Nama_akun,
Header_akun)
VALUES ('AK004', 'Akun Piutang', 'AK001');

14 MApa yang terjadi ketika data pada nomor 13 dimasukkan ke Ketika data pada nomor 13 dimasukkan ke
tabel Akun. Jika terjadi error, sebutkan apa errornya dan apa dalam tabel Akun, terjadi error, errornya
penyebabnya menurut kamu? sebagai berikut:

Error Code : 1452


Cannot add or update a child
row: a foreign key constraint

Modul Praktikum Bahasa Query 18


Terstruktur
fails
(`anandapembelian022`.`akun`,
CONSTRAINT `fk_akun` FOREIGN
KEY (`Header_akun`)
REFERENCES `akun`
(`Kode_Akun`))
Error Code : 1452
Cannot add or update a child
row: a foreign key constraint
fails
(`anandapembelian022`.`akun`,
CONSTRAINT `fk_akun` FOREIGN
KEY (`Header_akun`)
REFERENCES `akun`
(`Kode_Akun`))

Menurut saya, error tersebut terjadi


karena kolom pk (Kode_Akun) yang diacu
oleh kolom fk (Header_akun) belum ada
datanya. Sehingga saat Header_akun
dieksekusi, sql kebingungan (yang
harusnya mengacu pada data di
Kode_Akun, namun tidak ada data) dan
terjadilah error

15 HTuliskan cara memperbaiki error tersebut agar semua data Cara memperbaiki hal tersebut adalah
berhasil masuk sesuai data pada no.13 dengan mengisi terlebih dahulu data pada
pk yaitu Kode_Akun, agar data tersebut
dapat dirujuk oleh fk (Header_akun)

INSERT INTO Akun (Kode_Akun, Nama_akun)


16 M asukkan data berikut ke dalam tabel Akun: VALUES ('AK001', 'Kas Pendapatan');
Kode_akun Nama_akun Header_akun INSERT INTO Akun (Kode_Akun, Nama_akun)
AK001 Kas Pendapatan AK001 VALUES ('AK002', 'Kas Toko');
AK002 Kas Toko AK003 INSERT INTO Akun (Kode_Akun, Nama_akun)
AK003 Kas Kecil AK002 VALUES ('AK003', 'Kas Kecil');
AK004 Akun Piutang AK001
INSERT INTO Akun (Kode_Akun, Nama_akun)
VALUES ('AK004', 'Akun Piutang');

UPDATE Akun SET Header_akun = 'AK001'


WHERE Kode_Akun = 'AK001' OR Kode_Akun =
'AK004';
UPDATE Akun SET Header_akun = 'AK003'
WHERE Kode_Akun = 'AK002';
UPDATE Akun SET Header_akun = 'AK002'
WHERE Kode_Akun = 'AK003';

INSERT INTO Pembelian (No_nota, Tgl_beli,


17 Lengkapi seluruh data pada tabel yang ada pada Total_jual, Discount, Total_Bayar,
database AnandaPembelian untuk tabel Pembelian, Jatuh_tempo, Kode_Pemasok)
VALUES ('NN01', '2020-10-20', 780000, 25,
Detail_Beli, Pembayaran, Jurnal_Pembelian dan 585000, '2020-10-27', 'SP011');
Jurnal_Pembayaran INSERT INTO Pembelian (No_nota, Tgl_beli,
Total_jual, Discount, Total_Bayar,
Jatuh_tempo, Kode_Pemasok)
VALUES ('NN02', '2020-10-23', 500000, 10,
450000, '2020-10-23', 'SP010');

Modul Praktikum Bahasa Query 19


Terstruktur
INSERT INTO detail_beli(Jumlah, Subtotal,
Harga_satuan, Kode_Bhn_Baku, No_nota)
VALUES (30, 480000, 16000,'CO3','NN01');
INSERT INTO detail_beli(Jumlah, Subtotal,
Harga_satuan, Kode_Bhn_Baku, No_nota)
VALUES (25, 230000, 9200,'CO3','NN02');

INSERT INTO Pembayaran(No_kuitansi,


Total_bayar, Tgl_bayar, No_nota)
VALUES ('NK01', 585000, '2020-10-27','NN01');
INSERT INTO Pembayaran(No_kuitansi,
Total_bayar, Tgl_bayar, No_nota)
VALUES ('NK02', 450000, '2020-10-23','NN02');

INSERT INTO Jurnal_Pembelian(Posisi_dr_cr,


nominal, No_kuitansi, Kode_Akun)
VALUES ('PDC001', 585000, 'NK01','AK001');
INSERT INTO Jurnal_Pembelian(Posisi_dr_cr,
nominal, No_kuitansi, Kode_Akun)
VALUES ('PDC002', 450000, 'NK02','AK002');

INSERT INTO JurnalPembayaran(Posisi_dr_cr,


nominal, No_kuitansi, Kode_Akun)
VALUES ('PDCP01', 585000, 'NK01','AK001');
INSERT INTO JurnalPembayaran(Posisi_dr_cr,
nominal, No_kuitansi, Kode_Akun)
VALUES ('PDCP02', 450000, 'NK02','AK002');

Modul Praktikum Bahasa Query 11


Terstruktur 0

Anda mungkin juga menyukai