Anda di halaman 1dari 4

UJIAN AKHIR SEMESTER

SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER DCI

Matakuliah : Praktikum Basis Data


Dosen : Zeni Muhamad Noer, ST., M.Kom.
Waktu : 120 menit
Sifat : Tutup Buku

Contoh kasus :
Sebuah Apotik dengan pendapatan perbulan mencapai jutaan rupiah ini menemukan kesulitan dalam
pengolahan data yang terjadi. Dimana Apotik ini mengalami kesulitan dalam pengolahan data stok obat,
pembelian obat dan penjualan obat, sehingga bisa diketahui dengan pasti data yang akurat.
Untuk menangani permasalahan tersebut diatas, maka dibuatlah sebuah sistem basis data untuk mengolah
data-data yang ada di Apotik tersebut, sehingga dapat terkontrol dengan baik dan benar. Adapun langkah-
langkah yang harus dilakukan adalah :
Syntax pembuatan Database untuk Pengolahan Data Apotik tersebut :
Nama database : Baseapotik_NIP Mahasiswa :
create database Baseapotik_11190063;
use Baseapotik_11190063;

1. Syntax SQL pembuatan databasenya adalah sebagai berikut :


Tabel-tabel:
Tabel Pelanggan
create table Tabel Pelanggan (ID char(10) Primary Key, Nama char(25), Alamat char(50),
Max_piutang DOUBLE, Saldo_piutang DOUBLE);

Tabel Suplier
create table Tabel_Suplier (Kode char(10) Primary Key, Nama char(25), Alamat char(40),
Telepon char(15), Saldo_hutang int(11));
Tabel Produsen
create table Tabel_Produsen (Nama char(30), Alamat char(40), Telepon char(15));

Tabel Obat

create table Tabel_Obat (Kode_obat char(15) Primary Key, Nama_obat char(30),


Produsen char(40), Kd_distributor char(10), Satuan char(15), Hrg_beli DOUBLE,
Hrg_beli_baru DOUBLE, PPN char(1), Disc_beli decimal(10,2), Isi_kemasan int(5),
Hrg_kemasan DOUBLE, Persen_jual1 decimal(10,2), Hrg_jual1 DOUBLE,
Persen_jual2 decimal(10,2), Hrg_jual2 DOUBLE, Persen_jual3 decimal(10,2),
Heg_jual3 DOUBLE, Stok int(11), Aturan_pakai char(70));

2. Jika muncul pesan error “ No database selected “, jelaskan apa maksud pesan tersebut !
Jawab :
Belum ada data yang diinput atau dientry ke dalam database.

3. Masukkan kedalam masing-masing tabel minimal 3 (tiga) Record/Data. Tuliskan


dengan lengkap sintaq SQL!
Tabel_Pelanggan :
insert into Tabel_Pelanggan (ID, Nama, Alamat, Max_piutang, Saldo_piutang) values
('111900951', 'Yadi_supriyadi','Nagarawangi', '10000000', '2000000'), ('11190063',
'Trianang','Sirnagalih', '8000000', '1500000'), ('111900953', 'Bambang','Sukajaya',
'8000000', '1000000');
+-----------+-----------------+------------+-------------+------------+
| ID | Nama | Alamat | Max_piutang |Saldo_piutang |
+-----------+-----------------+------------+-------------+------------+
| 111900951 | Yadi_Supriyadi | Nagarawangi | 10000000 | 2000000 |
| 111900952 | Trianang | Sirnagalih | 8000000 | 1500000 |
| 111900953 | Bambang | Sukajaya | 8000000 | 1000000 |
+-----------+-----------------+------------+-------------+------------+
rows in set (0.023 sec)

Tabel_Suplier :
insert into Tabel_Suplier (Kode, Nama, Alamat, Telepon, Saldo_hutang) values
('111900954', 'Haris', 'Bandung', '022-81222678', '900000'), ('111900954', 'Alif',
'Jakarta', '021-23456787', '100000'),('111900956', 'Alif', 'Bandung', '022-34562765',
'700000');

+-----------+-------+---------+--------------+--------------+
| Kode | Nama | Alamat | Telepon | Saldo_hutang |
+-----------+-------+---------+--------------+--------------+
| 111900954 | Haris | Bandung | 022-81222678 | 900000 |
| 111900955 | Alif | Jakarta | 021-23456787 | 100000 |
| 111900956 | Alif | Bandung | 022-34562765 | 700000 |
+-----------+-------+---------+--------------+--------------+
3 rows in set (0.012 sec)

Tabel_Produsen :
insert into Tabel_Produsen (Nama, Alamat, Telepon) values ('Farida', 'Semarang',
'081222240550'),('Lukito', 'Bandung', '022-987664333'), ('Samsul', 'Jakarta', '021-
222240550');
+--------+----------+---------------+
| Nama | Alamat | Telepon |
+--------+----------+---------------+
| Farida | Semarang | 081222240550 |
| Lukito | Bandung | 022-987664333 |
| Samsul | Jakarta | 021-222240550 |
+--------+----------+---------------+
3 rows in set (0.001 sec)

Tabel_Obat :
insert into Tabel_Obat (Kode_obat, Nama_obat, Produsen, Kd_distributor, Satuan,
Hrg_beli, Hrg_beli_baru, PPN, Disc_beli, Isi_kemasan, Hrg_kemasan, Persen_jual1,
Hrg_jual1, Persen_jual2, Hrg_jual2, Persen_jual3, Heg_jual3, Stok, Aturan_pakai)
values ('000000000000100', 'Geraldine', 'Farida', '123456789', 'Kapsul', '2500', '2400',
'A', '100', '100', '250000', '10', '2525', '20', '2550', '30', '2575', '1000000', 'Sebelum
Makan'), ('000000000000200', 'Antalgine', 'Lukito', '123456788', 'Kaplet', '2500', '2400',
'A', '100', '100', '250000', '10', '2525', '20', '2550', '30', '2575', '2000000', 'Sebelum
Makan'), ('000000000000150', 'Paladine', 'Samsul', '123456787', 'Tablet', '1500', '1400',
'A', '100', '100', '150000', '10', '1525', '20', '1550', '30', '1575', '1500000', 'Sesudah
Makan');

+-----------------+-----------+----------+----------------+--------+----------+---------------+------
+-----------+-------------+-------------+--------------+-----------+--------------+-----------+--------------
+-----------+---------+---------------+
| Kode_obat | Nama_obat | Produsen | Kd_distributor | Satuan | Hrg_beli | Hrg_beli_baru |
PPN | Disc_beli | Isi_kemasan | Hrg_kemasan | Persen_jual1 | Hrg_jual1 | Persen_jual2 |
Hrg_jual2 | Persen_jual3 | Heg_jual3 | Stok | Aturan_pakai |
+-----------------+-----------+----------+----------------+--------+----------+---------------+------
+-----------+-------------+-------------+--------------+-----------+--------------+-----------+--------------
+-----------+---------+---------------+
| 000000000000100 | Geraldine | Farida | 123456789 | Kapsul | 2500 | 2400 | A |
100.00 | 100 | 250000 | 10.00 | 2525 | 20.00 | 2550 | 30.00 | 2575 |
1000000 | Sebelum Makan |
| 000000000000150 | Paladine | Samsul | 123456787 | Tablet | 1500 | 1400 | A |
100.00 | 100 | 150000 | 10.00 | 1525 | 20.00 | 1550 | 30.00 | 1575 |
1500000 | Sesudah Makan |
| 000000000000200 | Antalgine | Lukito | 123456788 | Kaplet | 2500 | 2400 | A |
100.00 | 100 | 250000 | 10.00 | 2525 | 20.00 | 2550 | 30.00 | 2575 |
2000000 | Sebelum Makan |
+-----------------+-----------+----------+----------------+--------+----------+---------------+------
+-----------+-------------+-------------+--------------+-----------+--------------+-----------+--------------
+-----------+---------+---------------+
3 rows in set (0.003 sec)

4. Syntaq SQL untuk mengubah Record/Data!


Update Tabel_Suplier set Alamat='Jakarta' where Kode='111900954';
Table sebelum diubah datanya :
+-----------+-------+---------+--------------+--------------+
| Kode | Nama | Alamat | Telepon | Saldo_hutang |
+-----------+-------+---------+--------------+--------------+
| 111900954 | Haris | Bandung | 022-81222678 | 900000 |
| 111900955 | Alif | Jakarta | 021-23456787 | 100000 |
| 111900956 | Alif | Bandung | 022-34562765 | 700000 |
+-----------+-------+---------+--------------+--------------+
3 rows in set (0.014 sec)

Table setelah diubah datanya :

+-----------+-------+---------+--------------+--------------+
| Kode | Nama | Alamat | Telepon | Saldo_hutang |
+-----------+-------+---------+--------------+--------------+
| 111900954 | Haris | Jakarta | 022-81222678 | 900000 |
| 111900955 | Alif | Jakarta | 021-23456787 | 100000 |
| 111900956 | Alif | Bandung | 022-34562765 | 700000 |
+-----------+-------+---------+--------------+--------------+
3 rows in set (0.001 sec)

5. Syntax SQL untuk menampilkan Kolom Kode_obat,Nama_obat,Satuan pada Tabel


Obat!
 select Kode_obat, Nama_obat, Satuan from Tabel_obat;

+-----------------+-----------+--------+
| Kode_obat | Nama_obat | Satuan |
+-----------------+-----------+--------+
| 000000000000100 | Geraldine | Kapsul |
| 000000000000150 | Paladine | Tablet |
| 000000000000200 | Antalgine | Kaplet |
+-----------------+-----------+--------+
3 rows in set (0.028 sec)

Anda mungkin juga menyukai