12.03.2016 Views

Basis Data(1)

Sarana Pendidikan Teknologi Aceh 2016-2020

Sarana Pendidikan Teknologi Aceh 2016-2020

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Basis</strong> <strong>Data</strong><br />

Jika ada perubahan nama_mhs di tabel mahasiswa maka perubahan<br />

tersebut harus juga dilakukan di tabel nilai dan juga berlaku sebaliknya yaitu jika<br />

ada perubahan nama_mhs di tabel nilai maka perubahan tersebut harus juga<br />

dilakukan di tabel mahasiswa.<br />

Jika hal tersebut tidak dilakukan maka data menjadi tidak konsiste dan<br />

ketergantunan fungsional menjadi tidak terpenuhi. Misalnya nilai yang nim–nya<br />

sama tetapi nama_mhs berbeda. Jika begitu, maka perubahan harus dilakukan<br />

diseluruh basis data, tetapi masalahnya perubahan itu tidak efisien dan<br />

seharusnya dihindari.Karena itu sebaiknya agar kriteria dependency preservation<br />

dapat terpenuhi dengan meniadakan/melepaskan atribut nama_mhs dari tabel<br />

nilai (sehingga tabel nilai berisi 3 atribut, yaitu nama-kul, nim dan indeks_nilai).<br />

8) Boyce Code Normal Form (BCNF)<br />

Kriteria berikutnya untuk mendapatkan tabel yang baik adalah dengan<br />

menerapkan BCNF. Sebuah tabel dikatakan memenuhi BCNF jika untuk semua<br />

ketergantungan fungsional dengan notasi X Y, maka X harus merupakan<br />

candidate key pada tabel tersebut. Jika tidak demikian, maka tabel tersebut<br />

harus didekomposisi berdasarkan ketergantungan fungsional yang ada,<br />

sedemikian hingga X menjadi candidat key dari tabel–tabel hasil dekomposisi.<br />

Contoh tabel yang tidak memenuhi BCNF :<br />

Ditentukan tabel A = (E, F, G, H, I) dan berlaku ketergantungan fungsional, yaitu :<br />

E, F G, H, I<br />

F, G H, I<br />

Disini tabel A tidak memenuhi BCNF karena ada X yang bukan candiday key,<br />

yaitu F, G sehingga F, G H, I.<br />

Sedangkan E, F adalah candidat key karena E, F G, H, I<br />

Karena terdapat 2 ketergantungan fungsional maka agar tabel A tidak memenuhi<br />

BCNF maka tabel tersebut harus didekomposisikan menjadi :<br />

A 1 = (E, F, G) dengan ketergantungan fungsional E, F G<br />

A 2 = (F, G, H, I) dengan ketergantungan fungsional F, G H, I<br />

94

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!