Você está na página 1de 2

Bentuk Normal Pertama (1NF) Tabel adalah dalam bentuk normal pertama (1NF) jika dan hanya jika

semua kolom hanya berisi nilai atomik, yaitu setiap kolom hanya dapat memiliki satu nilai untuk setiap baris dalam tabel. Contoh :

Pada tabel bank diatas terlihat bahwa alamat_cabang memiliki nilai ganda, hal ini tidak diperbolehkan dalam bentuk pertama. Sehingga perlu diterapkan aturan bentuk pertama dimana setiap kolom hanya dapat memiliki satu nilai untuk setiap baris dalam tabel.

Ketika lebih dari satu kolom dapat merujuk kepada berbagai atribut dari domain yang sama, tabel tersebut masih dalam 1NF karena nilai-nilai dalam tabel masih atom.

Bentuk Normal Kedua (2NF) Tabel adalah dalam bentuk normal kedua (2NF) jika dan hanya jika dalam 1NF dan setiap atribut nonkey sepenuhnya tergantung pada primer kunci. Selain itu juga menngunakan konsep ketergantungan fungsi. Fungsional ketergantungan dilambangkan oleh : A -> B Atribut yang bukan kunci tidak boleh ada ketergantungan terhadap salah satu bagian dari kunci primer. Contoh :

Pada tabel diatas aturan pada 2NF tidak dapat diberlakukan karena terdapat ketergantungan fungsi terhadap salah satu komponen dari kunci primer. Ketergantungan tersebut dapat dilihat pada gambaran sederhana berikut : No_laporan -> editor, no_dept no_dept -> nama_dept, alamat_dept. id_penulis -> nama_penulis, alamat_penulis Sehingga agar 2NF berlaku maka tabel akan dipecah menjadi 3 tabel : laporan 1 : No_laporan -> editor, no_dept

laporan 2 laporan 3

: no_dept -> nama_dept, alamat_dept. : id_penulis -> nama_penulis, alamat_penulis : No_laporan , id_penulis (sebagai kunci primer)

Bentuk Normal Ketiga (3NF) Tabel adalah dalam bentuk normal ketiga (3NF) jika dan hanya jika untuk setiap fungsional trivial ketergantungan X-> A, dimana X dan A baik atribut sederhana atau komposit, salah satu dari dua kondisi yang harus terus terjadi. Entah atribut X adalah superkey, atau atribut adalah anggota sebuah kunci kandidat. Jika atribut A adalah anggota kunci calon, A disebut atribut utama, dan juga tidak ada ketergantungan transitif. Fungsional ketergantungan dilambangkan oleh : X -> Y -> Z Pada tabel terdapat ketergantungan transitif yaitu : No_laporan -> no_dept - > nama_dept, alamat_dep Maka pada tabel laporan akan dipecah menjadi 2, dan hubungannya dapat dilihat pada gambaran dibawah ini: laporan1.1 : no_laporan -> editor, no_dept laporan1.2 : no_dept -> nama_dept, alamat_dept laporan 2 : id_penulis -> nama_penulis, alamat_penulis laporan 3 : no_laporan, id_penulis (kunci primer)

Você também pode gostar