M7 - Sistem Basis Data
1. Pertanyaan ini mengharuskan anda memeriksa teks yang digarisbawahi untuk menentukan apakah itu benar.
Petunjuk: Lihat teks yang digarisbawahi.
Jika pernyataan itu benar, pilih "Tidak diperlukan perubahan." Jika pernyataan itu salah, pilih jawaban yang memiliki pernyataan benar.
alasan :
Normalisasi digunakan untuk mengubah struktur tabel yang tidak normal menjadi normal. Normalisasi berguna untuk menghilangkan data yang berulang. Untuk mengubah tabel tidak normal menjadi normal terdapat beberapa level yaitu 1NF, 2NF dan 3NF.
2. Pertanyaan ini mengharuskan anda memeriksa teks yang digarisbawahi untuk menentukan apakah itu benar.
Petunjuk: Lihat teks yang digarisbawahi.
Jika pernyataan itu benar, pilih "Tidak diperlukan perubahan." Jika pernyataan itu salah, pilih jawaban yang memiliki pernyataan benar.
3. Tabel dapat dikatakan normal jika tidak memiliki baris data yang berulang dan setiap value dalam kolom berisi nilai tunggal. Merupakan syarat dari Normalisasi..
4. Terdapat beberapa level dari normalisasi yaitu level 1NF, 2NF, dan 3NF.
5. Normalisasi adalah langkah yang tepat dalam menyusun sebuah data agar menghindari adanya..
6. Tahap normalisasi 2NF merupakan tahapan yang dilakukan setelah melakukan normalisasi 3NF.
7. Perhatikan tabel di bawah ini :
IDKursus | NamaKursus | IDPeserta | NamaPeserta | Tingkatan | Biaya |
---|---|---|---|---|---|
K1 | Basis Data | 14117820 | Aufa Ananda | Beginner | 500000 |
K1 | Basis Data | 14117043 | Aditya Gibran | Fundamental | 250000 |
K2 | Java | 14117856 | Arsyinta | Beginner | 500000 |
K2 | Java | 14117555 | Ria | Intermediate | 750000 |
K2 | Java | 14172345 | Banu | Fundamental | 250000 |
8. Jika tabel sudah terlihat normal pada level normalisasi ke 2 (2NF) maka tidak perlu di lakukan normallisasi tahap ke 3 (3NF).
9. Terdapat dua tabel yaitu tabel OrderItem dan Item. Masing masing tabel memiliki atribut yang digambarkan di bawah ini :
OrderNumber (PK) |
---|
ItemNumber(FK) |
QuantityOrdered |
Price |
TotalAmount |
ItemNumber( PK) |
---|
ItemName (FK) |
ItemPice |
10. John bekerja sebagai administrator basis data untuk perusahaan Bluewell. Perusahaan ini memiliki sebuah database. Terdapat tabel yang memiliki kolom kunci kandidat dan kolom yang bukan merupakan kandidat kunci. Kolom kunci kandidat berarti kolom yang dapat menjadi kunci utama (Primary key). Bukan kunci kandidat bergantung secara keseluruhan terhadap kunci kandidat. Hal tersebut masuk ke dalam normalisasi tahap..
11. Anda bekerja di bidang IT pada sebuah restoran, anda diminta untuk membantu memperbaiki data yang ada.
IDResep | NamaResep | IDKomposisi | KomposisiUtama | Kategori | Hidangan |
---|---|---|---|---|---|
1 | Ayam Parmigiana | A1 | Ayam | A | Hidangan Utama |
2 | Potongan Kulit Ayam | A1 | Ayam | A | Hidangan Utama |
3 | Daging Panggang | D1 | Daging | A | Hidangan Utama |
4 | Jagung Susu Manis | J1 | Jagung | B | Hidangan Kecil |
Anda perlu melakukan normalisasi 3NF, berapa banyak tabel yang harus anda buat?
Terlihat pada tabel di atas kolom KomposisiUtama bergantung dengan IDKomposisi yang bukan primary key. contoh A1 = Ayam.
Terlihat kolom Hidangan bergantung dengan Kategori. contohnya Kategori A = Hidangan Utama dan kategori B = Hidangan Kecil.
Pada tabel resep pasti juga membutuhkan data komposisi dan data kategori makanan tersebut. Oleh karena itu tabel resep di atas dapat di buat kembali dengan 3 tabel.
yaitu :
1. Tabel Komposisi dengan kolom IDKomposisi sebagai primary key.
IDKomposisi | KomposisiUtama |
---|---|
A1 | Ayam |
D1 | Daging |
J1 | Jagung |
2. Tabel Kategori dengan kolom Kategori sebagai primary key.
Kategori | Hidangan |
---|---|
A | Hidangan Utama |
B | Hidangan Kecil |
3. Tabel Resep dengan kolom IDResep sebagai primary key. Kolom IDKomposisi dan kolom Kategori sebagai foreign key.
IDResep | NamaResep | IDKomposisi | Kategori |
---|---|---|---|
1 | Ayam Parmigiana | A1 | A |
2 | Potongan Kulit Ayam | A1 | A |
3 | Daging Panggang | D1 | A |
4 | Jagung Susu Manis | J1 | B |
12. Perhatikan tabel Peserta di bawah ini :
IDPeserta | NamaPeserta | Tingkatan | Biaya |
---|---|---|---|
14117043 | Aditya Gibran | Fundamental | 250000 |
14117555 | Ria | Intermediate | 750000 |
14117820 | Aufa Ananda | Beginner | 500000 |
14117856 | Arsyinta | Beginner | 500000 |
14172345 | Banu | Fundamental | 250000 |
13. Tabel dapat dikatakan Normalisasi 3NF jika…
14. Mark bekerja sebagai Administrator Database untuk Techworld Inc. Mark ingin menormalisasikan tabel yang memiliki kolom bukan primary key bergantung pada kolom bukan primary key juga. Manakah dari bentuk normal yang Mark butuhkan?
15. Perhatikan tabel berikut ini :
KodeKaryawan | NamaKaryawan | Jabatan | Gaji |
---|---|---|---|
A12B12 | Bima | Direktur Keuangan | 1400000 |
A15B15 | Yolanda | Manager | 1000000 |
A1B1 | Rahman | Direksi | 2000000 |
A6B6 | Rionaldo | Manager | 1000000 |
Tabel di atas belum memenuhi bentuk 3NF. Anda harus memecahnya menjadi 2 tabel. Dengan cara membuat tabel Karyawan yang berisi kolom KodeKaryawan (Primary key), NamaKaryawan, dan Jabatan (Foreign Key). Lalu tabel kedua yaitu tabel Jabatan yang berisi kolom Jabatan (Primary Key) dan Gaji.
16. Berikut bentuk umum untuk membuat tabel dengan primary key dan foreign key:
CREATE TABLE table_name(primarykeycolumn data type PRIMARY KEY, column_2, column_3,...,
FOREIGN KEY(foreignkey_name) REFERENCES originaltable_name(foreignkey_column));
Contoh penggunaan seperti berikut:
CREATE TABLE Barang (IDBarang VARCHAR(7) PRIMARY KEY, NamaBarang VARCHAR(20),
HargaBarang DECIMAL, IDKategori VARCHAR(7),
FOREIGN KEY(IDKategori), REFERENCES Kategori(IDKategori));
SOAL :
Terdapat tabel Pegawai dengan kolom NoPegawai sebagai primary key. Tabel ini memiliki informasi nama pegawai dan gaji yang akan di dapatkannya.
Pada Tabel Pegawai masih terdapat kolom yang bergantung dengan kolom yang bukan primary key.
Tabel Pegawai
NoPegawai | NamaPegawai | Golongan | BesarGaji |
Peg01 | Annisa | A | 1750000 |
Peg02 | Priska | C | 1250000 |
Peg06 | Anwar | A | 1750000 |
Peg12 | Dinda | B | 1500000 |
Peg14 | Dandi | B | 1500000 |
17. Berikut bentuk umum untuk memasukkan data:
INSERT INTO table_name(column_1, column_2,...)
VALUES(value_1, value_2,...),
(value_1, value_2,...),
.....
(value_N, value_N,..)
);
Contoh penggunaan seperti berikut:
INSERT INTO Pengguna(IDPengguna, NamaPengguna, Alamat)
VALUES('1111', 'Aisyah', 'Jl.Mekar raya'),
('2222', 'Nando', 'Jl.Jimbaran');
SOAL :Tabel MatakuliahWajib
NPM | NamaMahasiswa | KDMatkul | NamaMatkul | NamaDosen |
12378888 | Rifqy | MTK111 | Matematika Wajib | Raden |
12378888 | Rifqy | BHS111 | Bahasa Indonesia | Ari |
12445566 | Zidan | MTK111 | Matematika Wajib | Raden |
12445566 | Zidan | FSK211 | Fisika | Ana |
Terihat pada tabel diatas terdapat tabel MatakuliahWajib. Tabel tersebut sudah memenuhi normalisasi 1NF.
Namun belum memenuhi Normalisasi2NF. Jika sudah terbentuk tabel Mahasiswa maka tabel tersebut harus diisi sesuai dengan tabel MatakuliahWajib. Query seperti apa yang dibutuhkan untuk mengisi tabel Mahasiswa?
Jawab :
INSERT INTO Mahasiswa(NPM, NamaMahasiswa)
VALUES('1237888', 'Rifqy'),
('12445566', 'Zidan');
18. Berikut bentuk umum untuk memasukkan data:
INSERT INTO table_name(column_1, column_2,...)
VALUES(value_1, value_2,...),
(value_1, value_2,...),
.....
(value_N, value_N,..)
);
Contoh penggunaan seperti berikut:
INSERT INTO Pengguna(IDPengguna, NamaPengguna, Alamat)
VALUES('1111', 'Aisyah', 'Jl.Mekar raya'),
('2222', 'Nando', 'Jl.Jimbaran');
SOAL :
Terdapat tabel PeminjamanBuku dengan data yang dimiliki IDAnggota, NamaAnggota, IDBuku, JudulBuku, dan Penerbit. Namun tabel tersebut dapat dikatakan belum memenuhi syarat normalisasi 1NF. Isilah data ke dalam tabel PeminjamanBuku sesuai dengan syarat Normalisasi 1NF.
Tabel PeminjamanBuku
IDAnggota | NamaAnggota | IDBuku | JudulBuku | Penerbit |
1278 | Arman | K782, K888 | Jaringan Komputer, Belajar Cepat Coding | Titan Publisher, Kooperatif |
1357 | Baskara | K888, K090 | Belajar Cepat Coding, Pembuatan Games Edukasi | Kooperatif, AMD Media |
19.
20.
21.
22.
Jawab :
insert into PeminjamanBuku(IDAnggota, NamaAnggota, IDBuku, JudulBuku, Penerbit)
VALUES
('1278', 'Arman','K782','Jaringan Komputer','Titan Publisher'),
('1278', 'Arman','K888','Belajar Cepat Cod','Kooperatif'),
('1357', 'Baskara','K888','Belajar Cepat Cod','Kooperatif'),
('1357', 'Baskara','K090','Pembuatan Games E','AMD Media');
Komentar
Posting Komentar