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

dan tiap atribut satu pengertian yang bernilai tunggal. 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. 3541245 6548143. 081234321454 Pada data tabel di atas. Berikut adalah contoh data-data yang belum ternormalisasi: Id_Sales S001 S002 S003 S004 S005 Nama_Sales Ria Anti Ani Maya Wulan Telepon 3513214. 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. 5825143. karena tidak ada atribut yang bernilai ganda. 6. dan tiap atribut satu pengertian yang bernilai tunggal.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. karena tidak ada atribut yang bernilai ganda. . 7563249 085337732666 6836592 6823928.

007. o Atribut bukan kunci haruslah bergantung secara fungsi pada kunci utama atau primary key. Contoh: . 006 001. 008 003. 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. 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. 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. 2NF o Memenuhi bentuk 1 NF (normal pertama).7. 008 002. 004. 8. 009 Pada data tabel di atas. 005 005. dan tiap atribut satu pengertian yang bernilai tunggal.

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

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 .

Telepon: Artinya bahwa atribut Telepon tidak tergantung pada Tetapi Id_Sales Id_Sales. 5825143. Untuk membentuk normal. 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. Pada contoh tabel Pekerjaan yang memenuhi normal pertama (1 NF) . kedua tiap tabel atau file haruslah ditentukan kuncikunci atributnya. 3541245 6548143. 7563249 085337732666 6836592 6823928. terlihat bahwa Id_Sales merupakan Primery Key (PK). Id_Sales Nama_Sales: Artinya atribut Nama_Sales bergantung pada Id_Sales. Kunci atribut harus unik dan dapat mewakili atribut lain yang menjadi anggotanya.

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. Pada contoh tabel Pekerjaan yang memenuhi normal pertama (1 NF) . NIM Nama: Artinya atribut Nama bergantung pada NIM. Kode_Matkul: Artinya bahwa atribut Kode_m tidak tergantung MatkulTetapi NIM pada NIM. 008 003. 004. 008 002. 006 001. Kunci atribut harus unik dan dapat mewakili atribut lain yang menjadi anggotanya. terlihat bahwa NIM merupakan Primery Key (PK). Untuk membentuk normal. 007. Belum Normal NIM 201010241 201010242 201010243 201010244 201010245 Nama Siti Beti Eli Rosi Eci Kode_Matkul 001. kedua tiap tabel atau file haruslah ditentukan kuncikunci atributnya. 009 Normal 1NF NIM Nama Kode_Matkul . 005 005.

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 .

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 maka R bukan 3NF sebab : Atribut D dan E (bukan kunci utama) bergantung secara fungsional pada C (yang juga bukan kunci utama). ü Menghindari update anomali yang masih mungkin terjadi pada 2NF. X adalah superkey 2.D.B & C. A.E dan C & D. Jika dan hanya jika setiap FD nontrivial : X & A.C.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). maka untuk normalisasi ke bentuk 3NF.B. Melalui FD : .E) .B kunci utama (primary key) dengan FD : A. dimana X dan A atribut (atau kompositnya). tabel 2NF didekomposisi menjadi beberapa tabel hingga masing-masing memenuhi 3NF. Tujuan membentuk 3NF : ü Semantik tabel 3NF menjadi lebih eksplisit (fully FD hanya pada primary key).D. A merupakan anggota candidate key (A disebut prime attribute) Jika suatu relasi sudah memenuhi 2NF tapi tidak memenuhi 3 NF. memenuhi salah satu kondisi : 1.

Tidak memenuhi definisi 3NF.E. Jadi R bukan 3NF.B. Diketahui C & D.B & A. Karena sifat refleksif maka C & C.D.C.E) sehingga R1 dan R2 memenuhi 3NF. 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 .C) dan R2=(C. Karena sifat refleksif maka A. Sehingga C & C.B & A.B.E (A.E. Agar R memenuhi 3NF maka didekomposisi menjadi : R1=(A.B.B.D.D.B) : Superkey. Sehingga A.E maka C bukan superkey.Diketahui A.E.D. Karena C> A.D.B & C.C. 3.

Tabel Sales Belum Normal Id_Sales S001 Nama_Sales Ria Telepon 3513214. 3541245 .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.

S002 S003 S004 S005 Anti Ani Maya Wulan 6548143. 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 . 7563249 085337732666 6836592 6823928. 5825143.

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. 008 003. 009 Normal 2NF NIM 201010241 201010242 201010243 201010244 201010245 Nama Siti Beti Eli Rosi Eci . 005 005. 008 002. 006 001. 007. Tabel Mahasiswa Belum Normal NIM 201010241 201010242 201010243 201010244 201010245 Nama Siti Beti Eli Rosi Eci Kode_Matkul 001. 004.

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 .

C) dengan FD : A & B dan B & C maka R bukan 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. Menghindari update anomali yang masih mungkin terjadi pada 3NF. maka apabila suatu relasi memenuhi BCNF pasti memenuhi 3NF. Definisi yang lain : Suatu relasi disebut memenuhi BCNF jika untuk setiap FD nontrivial : X à A atribut X adalah superkey. maka tabel 3NF didekomposisi menjadi beberapa tabel yang masing-masing memenuhi BCNF. Contoh : Diketahui tabel R=(A. Dari definisi 3NF dan BCNF.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. sebab : v A Superkey ? .B. Untuk normalisasi ke bentuk BCNF. tetapi belum tentu sebaliknya. Tujuan membentuk BCNF : multiple candidate key menjadi lebih eksplisit (FD hanya pada candidate key).

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.B.B) .C) . Sehingga B & A. Jadi A superkey. FD : B & C. Agar R memenuhi BCNF maka didekomposisi menjadi : R1=(A. FD : A & B dan R2=(B.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 . 4.C atau B bukan superkey.C) atau A & R. Sehingga R1 dan R2 masing-masing memenuhi BCNF. v B Superkey ? B & C (diketahui) B&B (refleksif) Tapi BA.

Man Man Rizal Rizal Hanif Hanif Hanif 6 tahun 3 tahun 2 tahun 4 tahun 4 tahun 5 tahun 8 tahun 5. 7563249 085337732666 6836592 6823928. 5825143. 3541245 6548143. Tabel Sales Belum Normal Id_Sales S001 S002 S003 S004 S005 Nama_Sales Ria Anti Ani Maya Wulan Telepon 3513214. 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 .

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 . Table Mahasiswa Belum Normal NIM 201010241 201010242 201010243 201010244 201010245 Nama Siti Beti Eli Rosi Eci Kode_Matkul 001. 007.S005 081234321454 6. 006 001. 004. 008 003. 008 002. 005 005.

Eci Eci 007 009 .

Sign up to vote on this title
UsefulNot useful