Page 73 - E-Modul Sistem Basis Data
P. 73
satu baris data (row) pertama di tabel Nilai dengan nilai nim yang sama dengan nilai
nim di tabel Mahasiswa yang nama mhs-nya diubah tersebut, maka KF ním - namo
mhs menjadi tidak terpenuhi lagi. Hal ini karena peristiwa itu mengakibatkan
adanya 2 row di tabel Nilai yang nim-nya sama, tapi nama mhs-nya berbeda. Jika
begitu, maka penjalaran perubahan tersebut harus dilakukan ke seluruh baris data
dengan nilai nim yang sesuai. Tetapi masalahnya, penjalaran perubahan ini tidak
efisien dan seharusnya dihindari.
Karena itu, solusi terbaik agar kriteria Dependency Preservation ini dapat
terpenuhi adalah dengan meniadakan/melepaskan atribut nama_mhs dari tabel Nilai
(sehingga tabel Nilai hanya berisi 3 buah atribut, yaitu nama_kul, nim dan
indeks_nilai).
4.4.3 Boycee-Codd Normal Form (BCNF)
Kriteria berikutnya untuk mendapatkan tabel yang baik adalah dengan
menerapkan Boyce-Code Normal Form (BCNF). Sebuah tabel dikatakan berada
dalam Boyce-Code Normal Form (BCNF) jika untuk semua KF dengan notasi XY,
maka X harus merupakan superkey pada tabel tersebut. Jika tidak demikian, maka
tabel tersebut harus di-dekomposisi berdasarkan KF yang ada, sedemikian hingga
X menjadi superkey dari tabel- tabel hasil dekomposisi.
Jika kita tinjau tabel universal yang merupakan rangkuman dari data
mahasiswa, dosen, kuliah, nilai dan jadwal, maka jelas sekali tabel tersebut tidak
memenuhi BCNF. Buktinya, kita ambil salah satu KF, yaitu nim nama_mhs alamat
mhs tgl lahir, maka seharusnya nim merupakan superkey di tabel tersebut. Tapi
pada kenyataannya tidak demikian, karena pada tabel tersebut nine tidak unik.
Karena itu, tabel universal itu harus didekomposisi.
61