Nim : 201001450244
Kelas : 04TPLP002
BASIS DATA 1
1. Jelaskan Pengertian dari Normalisasi Database! Dan apa tujuan dari Normalisasi
Database!
2. Jelaskan dan berikan contoh pengertian dari superkey, candidate key, primary key dan
foreign key?
3. Jelaskan pengertian dari Anomali Database!
4. Jelaskan pengertian daripada anomali dan sebutkan 3 (tiga) anomali dalam suatu
database (basis data)
5. Jelaskan dan berikan contoh terjadinya anomali peremajaan
(update), penyisipan (insert) dan penghapusan (delete)
Jawab
1. Normalisasi merupakan sebuah teknik logical desain dalam sebuah basis data yang
mengelompokkan atribut dari berbagai entitas dalam suatu relasi sehingga membentuk
struktur relasi yang baik (tanpa redudansi/pengulangan data) serta sebagian besar
ambiguity bisa dihilangkan.
Tujuan dari normalisasi adalah untuk menghilangkan duplikasi/kerangkapan data,
mengurangi kompleksitas data, dan mempermudah modifikasi data.
2. Primary key adalah suatu atribut(bisa satu atau lebih) yang digunakan untuk
mendefinisikan atau memastikan bahwa setiap record didalam tabel tersebut bersifat
unique atau berbeda antara yang satu dengan yang lainya.
Contoh Primary Key
Sebagai contoh disini telah memiliki sebuah tabel mahasiswa dimana atribut – atribut
nya terdiri dari id, nama, alamat, nik dan nim. Pada tabel tersebut atrribut id akan kita
jadikan sebagai primary key sehingga pada nilai dari attribut yang kita jadikan primary
key value nya harus bersifat unik atau harus berbeda dengan nilai pada baris lainya.
Foreign key adalah suatu atribut (bisa satu atau lebih) yang digunakan sebagai
penghubung antara tabel satu dengan tabel yang lainya pada database relational.
Contoh Foreign Key
Dari tabel yang sebelumnya hanya punya satu tabel sekarang kita tambah tabelnya
menjadi 2 dengan menambahkan satu tabel dengan nama prodi. Karena antara tabel
mahasiswa dan prodi memiliki hubungan maka kita harus membuat relasi dari kedua
tabel tersebut. Untuk membuat relasinya kita membutuhkan sebuah foreign key
sehingga kita tambahkan sebuah atrribut baru dengan nama kode_prodi pada tabel
mahasiswa. kode_prodi akan menjadi kunci tamu dari kunci utama pada tabel prodi
sehingga nilai dari atrribut kode_prodi pada tabel mahasiswa harus sama dengan nilai-
nilai yang tersedia pada tabel prodi.
Candidate Key merupakan sekumpulan atribut yang secara unik mengidentifikasi
tupel dalam sebuah tabel.
Contoh Candidate Key
Super key adalah sekumpulan atribut yang mengidentifikasi baris dalam tabel secara
unik. Super Key adalah superset dari Candidate Key.
Contoh Super Key
Dalam tabel mahasiswa di atas, untuk (id, nama) nama mahasiswa bisa sama, tetapi id
mereka tidak boleh sama. Karenanya, kombinasi ini juga bisa menjadi kunci.
Super key-nya adalah id, (id, nama), dll.
3. Anomali adalah proses pada basis data yang memberikan efek samping yang tidak
diharapkan ( misalnya menyebabkan ketidakonsistenan data atau membuat suatu data
menjadi hilang ketika data dihapus)
4. Anomali adalah proses pada basis data yang memberikan efek samping yang tidak
diharapkan (misalnya ketidakkonsistenan data karena adanya redudansi).
Anomali peremajaan
Anomali ini terjadi bila ada perubahan pada sejumlah data yang mubazir, tetapi tidak
seluruhnya diubah. Contoh : Tabel Pesanan
Anomali Penyisipan
Anomali ini terjadi pada saat penambahan data ternyata ada elemen yang kosong dan
elemen tsb justru menjadi key. Contoh : Tabel Kursus
Anomali penghapusan
Anomali ini terjadi apabila dalam satu baris/ tuple ada data yang akan dihapus sehingga
akibatnya terdapat data lain yang hilang. Contoh pada table kursus data NoSiswa 20
akan dihapus karena sudah tidak ikut kursus lagi sehingga akibatnya data kursus bhs
jepang dan biaya 70000 akan ikut terhapus.