Normalisasi Tabel “1NF, 2NF, 3NF dan BCNF”

Posted by Rachman Marangga on 9 Januari 2012 Posted in: Database. Tagged: anomali. Tinggalkan sebuah Komentar

Rate This Pengertian normalisasi: Normalisasi adalah Teknik atau pendekatan yang digunakan dalam membangun disain database relasional melalui himpunan data dengan tingkat ketergantungan fungsional dan keterkaitan yang tinggi sehingga menghasilkan struktur tabel yang normal. Tujuan normalisasi:
  

Minimalisasi redundansi (pengulangan data) Memudahkan identifikasi entitas Mencegah terjadinya anomali

Beberapa bentuk normal: 1. 1NF, 2NF, 3NF, BCNF 1NF Suatu relasi dikatakan bentuk normal pertama, jika dan hanya jika setiapatribut bernilai tunggal untuk setiap baris. Tiap field hanya satu pengertian, bukanmerupakan kumpulan kata yang mempunyai arti mendua, hanya satu arti saja dan juga bukanlah pecahan kata – kata sehingga artinya lain. Tidak ada set atribut yangberulang-ulang atau atribut bernilai ganda. 2NF Memenuhi bentuk 1 NF (normal pertama), Atribut bukan kunci haruslah bergantung secara fungsi pada kunci utama /primary key 3NF Memenuhi bentuk 2 NF (normal kedua), Atribut bukan kunci tidak memiliki dependensi transitif terhadap kunci utama / primarykey. BCNF Memenuhi bentuk 3 NF (normal ketiga), Semua penentu (determinan) adalah kunci kandidat (atribut yang bersifat unik) serta Setiap atribut harus bergantung fungsi pada atribut superkey. 2. 4NF, 5NF

Contoh: 1. First Normal Form (1NF) o Suatu relasi disebut memenuhi bentuk normal pertama (1NF) jika dan hanya jika setiap atribut dari relasi tersebut hanya memiliki tunggal dan tidak ada pengulangan grup atribut dalam baris. o Bentuk 1NF tidak boleh mengandung grup atribut yang berulang. o Tujuan membentuk 1NF :  Semantik tabel menjadi lebih eksplisit (say anything once).  Semua operator aljabar relasional dapat diaplikasikan pada tabel.

Kasus yang Di Buat: v Pekerjaan v Sales v Mahasiswa

5. Berikut adalah contoh data-data yang belum ternormalisasi: NIP 001 002 003 Nama Man Rizal Hanif Jabatan Analisis Analisis Programer Keahlian Acces Oracle MySQL Oracle C VB Java Lama 6 tahun 3 tahun 2 tahun 4 tahun 4 tahun 5 tahun 8 tahun

Pada tabel di atas, contoh data belum ternormalisasi sehingga dapat diubah ke dalam bentuk 1NF dengan cara membuat setiap baris berisi kolom dengan jumlah yang sama dan setiap kolom hanya mengandung satu nilai.

NIP 001

Nama Man

Jabatan Analisis

Keahlian Acces

Lama 6 tahun

5825143. 6. contoh data belum ternormalisasi sehingga dapat diubah ke dalam bentuk 1NF dengan cara membuat setiap baris berisi kolom dengan jumlah yang sama dan setiap kolom hanya mengandung satu nilai. 7563249 085337732666 6836592 6823928. . 3541245 6548143. dan tiap atribut satu pengertian yang bernilai tunggal. 081234321454 Pada data tabel di atas.001 002 002 003 003 003 Man Rizal Rizal Hanif Hanif Hanif Analisis Analisis Analisis Programer Programer Programer Oracle MySQL Oracle C VB Java 3 tahun 2 tahun 4 tahun 4 tahun 5 tahun 8 tahun Relasi Pekerjaan tersebut merupakan bentuk 1 NF. dan tiap atribut satu pengertian yang bernilai tunggal. karena tidak ada atribut yang bernilai ganda. Id_Sales S001 S001 S002 S002 S002 S003 S004 S005 S005 Nama_Sales Ria Ria Anti Anti Anti Ani Maya Wulan Wulan Telepon 3513214 3541245 6548143 5825143 7563249 085337732666 6836592 6823928 081234321454 Relasi Sales tersebut merupakan bentuk 1 NF. Berikut adalah contoh data-data yang belum ternormalisasi: Id_Sales S001 S002 S003 S004 S005 Nama_Sales Ria Anti Ani Maya Wulan Telepon 3513214. karena tidak ada atribut yang bernilai ganda.

8. 007. 009 Pada data tabel di atas. Contoh: . dan tiap atribut satu pengertian yang bernilai tunggal. karena tidak ada atribut yang bernilai ganda. Berikut adalah contoh data-data yang belum ternormalisasi: NIM 201010241 201010242 201010243 201010244 201010245 Nama Siti Beti Eli Rosi Eci Kode_Matkul 001. 2NF o Memenuhi bentuk 1 NF (normal pertama). 008 003.7. 005 005. o Atribut bukan kunci haruslah bergantung secara fungsi pada kunci utama atau primary key. 004. contoh data belum ternormalisasi sehingga dapat diubah ke dalam bentuk 1NF dengan cara membuat setiap baris berisi kolom dengan jumlah yang sama dan setiap kolom hanya mengandung satu nilai. 006 001. 008 002. NIM 201010241 201010241 201010241 201010242 201010242 201010243 201010243 201010244 201010244 201010245 201010245 201010245 Nama Siti Siti Siti Beti Beti Eli Eli Rosi Rosi Eci Eci Eci Kode_Matkul 001 004 008 002 005 005 008 003 006 001 007 009 Relasi Mahasiswa tersebut merupakan bentuk 1 NF.

B & D dan A. Kunci atribut harus unik dan dapat mewakili atribut lain yang menjadi anggotanya.B) à (C. 11.B) & (C. tidak untuk E.B kunci utama (primary key) dengan FD : A.C.B). lakukan dekomposisi menjadi : R1 = (A. Tampak R1 dan R2 memenuhi 2NF. Keahlian dan Lama: Artinya bahwa atribut Lama tidak tergantungpada Tetapi NIP NIP. A.D. Apakah memenuhhi 2NF ? Jelas bahwa R bukan 2NF karena ada atribut E yang bergantung hanya pada atribut B saja dan bukan terhadap (A.B.E) .D.Diketahui tabel R=(A.B.C.D. kedua tiap tabel atau file haruslah ditentukan kuncikunci atributnya.B & C.B & C. Jadi bukan 2NF.E berarti : A.B). Belum Normal .D) dan B & E.C. Untuk mengubah menjadi 2NF. terlihat bahwa NIP merupakan Primery Key (PK). A.B). NIP Nama dan Jabatan: Artinya atribut Nama dan Jabatan bergantung pada NIP.E maka tabel R memenuhi 2NF sebab : A.E).D.B & E Jadi semua atribut bukan kunci utama tergantung penuh pada (A. Dari FD : (A.D) dan R2 = (B.E) tetapi dengan FD : (A.B. Bagaimana bila R = (A. Pada contoh tabel Pekerjaan yang memenuhi normal pertama (1 NF) .D) juga mencerminkan bahwa hanya C dan D saja yang bergantung secara fungsional terhadap (A. Untuk membentuk normal.B & C.

NIP 001 002 003 Nama Man Rizal Hanif Jabatan Analisis Analisis Programer Keahlian Acces Oracle MySQL Oracle C VB Java Lama 6 tahun 3 tahun 2 tahun 4 tahun 4 tahun 5 tahun 8 tahun Normal 1NF NIP 001 001 002 002 003 003 003 Nama Man Man Rizal Rizal Hanif Hanif Hanif Jabatan Analisis Analisis Analisis Analisis Programer Programer Programer Keahlian Acces Oracle MySQL Oracle C VB Java Lama 6 tahun 3 tahun 2 tahun 4 tahun 4 tahun 5 tahun 8 tahun Normal 2NF NIP 001 002 003 Nama Man Rizal Hanif Jabatan Analisis Analisis Programer NIP 001 001 002 002 003 003 003 Keahlian Acces Oracle MySQL Oracle C VB Java Lama 6 tahun 3 tahun 2 tahun 4 tahun 4 tahun 5 tahun 8 tahun .

081234321454 Normal 1NF Id_Sales S001 S001 S002 S002 S002 S003 S004 S005 S005 Nama_Sales Ria Ria Anti Anti Anti Ani Maya Wulan Wulan Telepon 3513214 3541245 6548143 5825143 7563249 085337732666 6836592 6823928 081234321454 Normal 2NF Id_Sales S001 S002 S003 Nama_Sales Ria Anti Ani .12. Belum Normal Id_Sales S001 S002 S003 S004 S005 Nama_Sales Ria Anti Ani Maya Wulan Telepon 3513214. 7563249 085337732666 6836592 6823928. Untuk membentuk normal. Kunci atribut harus unik dan dapat mewakili atribut lain yang menjadi anggotanya. Telepon: Artinya bahwa atribut Telepon tidak tergantung pada Tetapi Id_Sales Id_Sales. Id_Sales Nama_Sales: Artinya atribut Nama_Sales bergantung pada Id_Sales. 5825143. terlihat bahwa Id_Sales merupakan Primery Key (PK). 3541245 6548143. Pada contoh tabel Pekerjaan yang memenuhi normal pertama (1 NF) . kedua tiap tabel atau file haruslah ditentukan kuncikunci atributnya.

008 002. 007. 006 001. NIM Nama: Artinya atribut Nama bergantung pada NIM. Kode_Matkul: Artinya bahwa atribut Kode_m tidak tergantung MatkulTetapi NIM pada NIM. terlihat bahwa NIM merupakan Primery Key (PK). Belum Normal NIM 201010241 201010242 201010243 201010244 201010245 Nama Siti Beti Eli Rosi Eci Kode_Matkul 001. Pada contoh tabel Pekerjaan yang memenuhi normal pertama (1 NF) . 009 Normal 1NF NIM Nama Kode_Matkul .S004 S005 Maya Wulan Id_Sales S001 S001 S002 S002 S002 S003 S004 S005 S005 Telepon 3513214 3541245 6548143 5825143 7563249 085337732666 6836592 6823928 081234321454 13. 004. Untuk membentuk normal. 008 003. 005 005. Kunci atribut harus unik dan dapat mewakili atribut lain yang menjadi anggotanya. kedua tiap tabel atau file haruslah ditentukan kuncikunci atributnya.

201010241 201010241 201010241 201010242 201010242 201010243 201010243 201010244 201010244 201010245 201010245 201010245 Siti Siti Siti Beti Beti Eli Eli Rosi Rosi Eci Eci Eci 001 004 008 002 005 005 008 003 006 001 007 009 Normal 2NF NIM 201010241 201010242 201010243 201010244 201010245 Nama Siti Beti Eli Rosi Eci NIM 201010241 201010241 201010241 201010242 201010242 201010243 201010243 201010244 201010244 201010245 201010245 201010245 Kode_Matkul 001 004 008 002 005 005 008 003 006 001 007 009 14. 3NF .

B kunci utama (primary key) dengan FD : A.D. A merupakan anggota candidate key (A disebut prime attribute) Jika suatu relasi sudah memenuhi 2NF tapi tidak memenuhi 3 NF.E maka R bukan 3NF sebab : Atribut D dan E (bukan kunci utama) bergantung secara fungsional pada C (yang juga bukan kunci utama).E) . dimana X dan A atribut (atau kompositnya). Jika suatu relasi memenuhi 2NF dan hanya memiliki tepat satu atribut yang bukan kunci utama maka relasi tersebut memenuhi 3NF Contoh : Diketahui tabel R=(A.E dan C & D. maka untuk normalisasi ke bentuk 3NF. Melalui FD : . Tujuan membentuk 3NF : ü Semantik tabel 3NF menjadi lebih eksplisit (fully FD hanya pada primary key).Suatu relasi disebut memenuhi bentuk normal ketiga (3NF) jika dan hanya jika : o o o Memenuhi 2NF Setiap atribut yang bukan kunci tidak tergantung secara fungsional terhadap atribut bukan kunci yang lain dalam relasi tsb (tidak terdapat ketergantungan transitif pada atribut bukan kunci). ü Menghindari update anomali yang masih mungkin terjadi pada 2NF.B. tabel 2NF didekomposisi menjadi beberapa tabel hingga masing-masing memenuhi 3NF.B & C.C. memenuhi salah satu kondisi : 1.D. X adalah superkey 2. Jika dan hanya jika setiap FD nontrivial : X & A. A.

D.B. Tidak memenuhi definisi 3NF.E. Sehingga A.E maka C bukan superkey. Agar R memenuhi 3NF maka didekomposisi menjadi : R1=(A.C) dan R2=(C. Sehingga C & C. Jadi R bukan 3NF.B) : Superkey.E) sehingga R1 dan R2 memenuhi 3NF.D. 3.D. Diketahui C & D.B. Karena sifat refleksif maka A.B & C.C.B & A.E (A.E.C.E. Karena sifat refleksif maka C & C.B.D.D.B & A.Diketahui A.B. Tabel Pekerjaan Belum Normal: NIP 001 002 003 Nama Man Rizal Hanif Jabatan Analisis Analisis Programer Keahlian Acces Oracle MySQL Oracle C VB Java Lama 6 tahun 3 tahun 2 tahun 4 tahun 4 tahun 5 tahun 8 tahun Normal 2NF NIP 001 002 003 Nama Man Rizal Hanif Jabatan Analisis Analisis Programer NIP 001 001 002 002 003 003 003 Keahlian Acces Oracle MySQL Oracle C VB Java Lama 6 tahun 3 tahun 2 tahun 4 tahun 4 tahun 5 tahun 8 tahun . Karena C> A.

Tabel Sales Belum Normal Id_Sales S001 Nama_Sales Ria Telepon 3513214.Normal 3NF NIP 001 001 002 002 003 003 003 Nama Man Man Rizal Rizal Hanif Hanif Hanif Jabatan Analisis Analisis Analisis Analisis Programer Programer Programer Jabatan Analisis Analisis Analisis Analisis Programer Programer Programer Lama 6 tahun 3 tahun 2 tahun 4 tahun 4 tahun 5 tahun 8 tahun NIP 001 001 002 002 003 003 003 Jabatan Analisis Analisis Analisis Analisis Programer Programer Programer Keahlian Acces Oracle MySQL Oracle C VB Java 4. 3541245 .

7563249 085337732666 6836592 6823928. 081234321454 Normal 2NF Id_Sales S001 S002 S003 S004 S005 Nama_Sales Ria Anti Ani Maya Wulan Id_Sales S001 S001 S002 S002 S002 S003 S004 S005 S005 Telepon 3513214 3541245 6548143 5825143 7563249 085337732666 6836592 6823928 081234321454 Normal 3NF Id_Sales S001 S002 S003 S004 Nama_Sales Ria Anti Ani Maya Nama_Sales S001 Telepon 3513214 . 5825143.S002 S003 S004 S005 Anti Ani Maya Wulan 6548143.

005 005. 009 Normal 2NF NIM 201010241 201010242 201010243 201010244 201010245 Nama Siti Beti Eli Rosi Eci . 006 001. 008 003. 004. 007.S001 S002 S002 S002 S003 S004 S005 S005 Id_Sales S001 S001 S002 S002 S002 S003 S004 S005 S005 3541245 6548143 5825143 7563249 085337732666 6836592 6823928 081234321454 Nama_Sales Ria Ria Anti Anti Anti Ani Maya Wulan Wulan Telepon 3513214 3541245 6548143 5825143 7563249 085337732666 6836592 6823928 081234321454 5. Tabel Mahasiswa Belum Normal NIM 201010241 201010242 201010243 201010244 201010245 Nama Siti Beti Eli Rosi Eci Kode_Matkul 001. 008 002.

NIM 201010241 201010241 201010241 201010242 201010242 201010243 201010243 201010244 201010244 201010245 201010245 201010245 Kode_Matkul 001 004 008 002 005 005 008 003 006 001 007 009 3NF NIM 201010241 201010242 201010243 201010244 201010245 Nama Siti Beti Eli Rosi Eci Nama Siti Siti Siti Beti Beti Eli Eli Rosi Rosi Eci Eci Eci Kode_Matkul 001 004 008 002 005 005 008 003 006 001 007 009 .

Tujuan membentuk BCNF : multiple candidate key menjadi lebih eksplisit (FD hanya pada candidate key).B. tetapi belum tentu sebaliknya. Contoh : Diketahui tabel R=(A. maka apabila suatu relasi memenuhi BCNF pasti memenuhi 3NF. Menghindari update anomali yang masih mungkin terjadi pada 3NF. Definisi yang lain : Suatu relasi disebut memenuhi BCNF jika untuk setiap FD nontrivial : X à A atribut X adalah superkey.NIM 201010241 201010241 201010241 201010242 201010242 201010243 201010243 201010244 201010244 201010245 201010245 201010245 Nama Siti Siti Siti Beti Beti Eli Eli Rosi Rosi Eci Eci Eci Kode_Matkul 001 004 008 002 005 005 008 003 006 001 007 009 6.C) dengan FD : A & B dan B & C maka R bukan BCNF. Untuk normalisasi ke bentuk BCNF. Dari definisi 3NF dan BCNF. sebab : v A Superkey ? . maka tabel 3NF didekomposisi menjadi beberapa tabel yang masing-masing memenuhi BCNF. BCNF o o o o Suatu relasi disebut memenuhi BCNF jika dan hanya jika setiap determinan yang ada pada relasi tersebut adalah candidate key.

B. 4. Sehingga B & A. Sehingga R1 dan R2 masing-masing memenuhi BCNF. FD : A & B dan R2=(B.AàB (diketahui) AàB dan B & C maka A & C (transitif) AàA (refleksif) Sehingga A & (A. Sebab A dan B dua-duanya sekarang menjadi superkey.C atau B bukan superkey. v B Superkey ? B & C (diketahui) B&B (refleksif) Tapi BA. FD : B & C. Agar R memenuhi BCNF maka didekomposisi menjadi : R1=(A.C) .B) . Tabel Pekerjaan Belum Normal NIP 001 002 003 Nama Man Rizal Hanif Jabatan Analisis Analisis Programer Keahlian Acces Oracle MySQL Oracle C VB Lama 6 tahun 3 tahun 2 tahun 4 tahun 4 tahun 5 tahun Normal BCNF NIP 001 002 003 Nama Man Rizal Hanif Jabatan Analisis Analisis Programer Keahlian Nama Lama . Jadi A superkey.C) atau A & R.B.

Man Man Rizal Rizal Hanif Hanif Hanif 6 tahun 3 tahun 2 tahun 4 tahun 4 tahun 5 tahun 8 tahun 5. Tabel Sales Belum Normal Id_Sales S001 S002 S003 S004 S005 Nama_Sales Ria Anti Ani Maya Wulan Telepon 3513214. 7563249 085337732666 6836592 6823928. 081234321454 Normal BCNF Id_Sales S001 S002 S003 S004 S005 Nama_Sales Ria Anti Ani Maya Wulan Nama_Sales S001 S001 S002 S002 S002 S003 S004 S005 Telepon 3513214 3541245 6548143 5825143 7563249 085337732666 6836592 6823928 . 5825143. 3541245 6548143.

S005 081234321454 6. 009 Normal BCNF NIM 201010241 201010242 201010243 201010244 201010245 Nama Siti Beti Eli Rosi Eci Nama Siti Siti Siti Beti Beti Eli Eli Rosi Rosi Eci Kode_Matkul 001 004 008 002 005 005 008 003 006 001 . 004. 006 001. 005 005. 008 003. 007. 008 002. Table Mahasiswa Belum Normal NIM 201010241 201010242 201010243 201010244 201010245 Nama Siti Beti Eli Rosi Eci Kode_Matkul 001.

Eci Eci 007 009 .

Sign up to vote on this title
UsefulNot useful