Anda di halaman 1dari 20

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.

Bentuk 1NF tidak boleh mengandung grup atribut yang berulang.

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

1. Berikut adalah contoh data-data yang belum ternormalisasi:


NIP
001

Nama
Man

Jabatan
Analisis

002

Rizal

Analisis

003

Hanif

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
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

Relasi Pekerjaan tersebut merupakan bentuk 1 NF, karena tidak ada atribut yang bernilai
ganda, dan tiap atribut satu pengertian yang bernilai tunggal.

2. Berikut adalah contoh data-data yang belum ternormalisasi:


Id_Sales
S001

Nama_Sales
Ria

Telepon
3513214, 3541245

S002
S003
S004
S005

Anti
Ani
Maya
Wulan

6548143, 5825143, 7563249


085337732666
6836592
6823928, 081234321454

Pada data 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.
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, karena tidak ada atribut yang bernilai
ganda, dan tiap atribut satu pengertian yang bernilai tunggal.

3. Berikut adalah contoh data-data yang belum ternormalisasi:


NIM
201010241
201010242
201010243
201010244
201010245

Nama
Siti
Beti
Eli
Rosi
Eci

Kode_Matkul
001, 004, 008
002, 005
005, 008
003, 006
001, 007, 009

Pada data 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.
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, karena tidak ada atribut yang bernilai
ganda, dan tiap atribut satu pengertian yang bernilai tunggal.
4. 2NF
o

Memenuhi bentuk 1 NF (normal pertama).

Atribut bukan kunci haruslah bergantung secara fungsi pada kunci utama atau
primary key.

Contoh:
Diketahui tabel R=(A,B,C,D,E) ; A,B kunci utama (primary key)
dengan FD : A,B & C,D,E maka tabel R memenuhi 2NF sebab :
A,B & C,D,E berarti :
A,B & C,
A,B & D dan
A,B & E
Jadi semua atribut bukan kunci utama tergantung penuh pada (A,B).

Bagaimana bila R = (A,B,C,D,E) tetapi dengan FD :


(A,B) & (C,D) dan B & E. Apakah memenuhhi 2NF ?
Jelas bahwa R bukan 2NF karena ada atribut E yang bergantung
hanya pada atribut B saja dan bukan terhadap (A,B).
Dari FD : (A,B) (C,D) juga mencerminkan bahwa hanya C dan D saja yang bergantung
secara fungsional terhadap (A,B), tidak untuk E.
Jadi bukan 2NF.
Untuk mengubah menjadi 2NF, lakukan dekomposisi menjadi :
R1 = (A,B,C,D) dan R2 = (B,E). Tampak R1 dan R2 memenuhi 2NF.

1. Untuk membentuk normal, kedua tiap tabel atau file haruslah ditentukan kuncikunci atributnya. Kunci atribut harus unik dan dapat mewakili atribut lain yang
menjadi anggotanya. Pada contoh tabel Pekerjaan yang memenuhi normal
pertama (1 NF) , terlihat bahwa NIP merupakan Primery Key (PK).
NIP

Nama dan Jabatan: Artinya atribut Nama dan Jabatan bergantung pada NIP.

Tetapi NIP
NIP.

Keahlian dan Lama: Artinya bahwa atribut Lama tidak tergantungpada

Belum Normal
NIP
001

Nama
Man

Jabatan
Analisis

002

Rizal

Analisis

003

Hanif

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

NIP
001
001
002
002
003
003
003

Keahlian
Acces
Oracle
MySQL
Oracle
C
VB
Java

Jabatan
Analisis
Analisis
Programer

Lama
6 tahun
3 tahun
2 tahun
4 tahun
4 tahun
5 tahun
8 tahun

2. Untuk membentuk normal, kedua tiap tabel atau file haruslah ditentukan kuncikunci atributnya. Kunci atribut harus unik dan dapat mewakili atribut lain yang
menjadi anggotanya. Pada contoh tabel Pekerjaan yang memenuhi normal
pertama (1 NF) , terlihat bahwa Id_Sales merupakan Primery Key (PK).
Id_Sales

Nama_Sales: Artinya atribut Nama_Sales bergantung pada Id_Sales.

Tetapi Id_Sales
Id_Sales.

Telepon: Artinya bahwa atribut Telepon tidak tergantung pada

Belum Normal
Id_Sales
S001
S002
S003
S004
S005

Nama_Sales
Ria
Anti
Ani
Maya
Wulan

Telepon
3513214, 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

Normal 1NF
Id_Sales
S001
S001
S002
S002
S002
S003
S004
S005
S005

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

3. Untuk membentuk normal, kedua tiap tabel atau file haruslah ditentukan kuncikunci atributnya. Kunci atribut harus unik dan dapat mewakili atribut lain yang
menjadi anggotanya. Pada contoh tabel Pekerjaan yang memenuhi normal
pertama (1 NF) , terlihat bahwa NIM merupakan Primery Key (PK).
NIM

Nama: Artinya atribut Nama bergantung pada NIM.

MatkulTetapi NIM
pada NIM.

Kode_Matkul: Artinya bahwa atribut Kode_m tidak tergantung

Belum Normal
NIM
201010241
201010242
201010243
201010244
201010245

Nama
Siti
Beti
Eli
Rosi
Eci

Kode_Matkul
001, 004, 008
002, 005
005, 008
003, 006
001, 007, 009

Nama
Siti
Siti

Kode_Matkul
001
004

Normal 1NF
NIM
201010241
201010241

201010241
201010242
201010242
201010243
201010243
201010244
201010244
201010245
201010245
201010245

Siti
Beti
Beti
Eli
Eli
Rosi
Rosi
Eci
Eci
Eci

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

008
002
005
005
008
003
006
001
007
009

4. 3NF
Suatu relasi disebut memenuhi bentuk normal ketiga (3NF) jika dan hanya jika :
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).

Jika dan hanya jika setiap FD nontrivial : X & A, dimana X dan A atribut (atau
kompositnya), memenuhi salah satu kondisi :
1. X adalah superkey
2. A merupakan anggota candidate key (A disebut prime attribute)

Jika suatu relasi sudah memenuhi 2NF tapi tidak memenuhi 3 NF, maka untuk
normalisasi ke bentuk 3NF, 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).
Menghindari update anomali yang masih mungkin terjadi pada 2NF.

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,B,C,D,E) ; A,B kunci utama (primary key)
dengan FD : A,B & C,D,E dan C & D,E maka R bukan 3NF sebab :
Atribut D dan E (bukan kunci utama) bergantung secara fungsional
pada C (yang juga bukan kunci utama).

Melalui FD :
Diketahui A,B & C,D,E. Karena sifat refleksif maka A,B & A,B. Sehingga A,B &
A,B,C,D,E (A,B) : Superkey.
Diketahui C & D,E. Karena sifat refleksif maka C & C. Sehingga C & C,D,E. Karena C>
A,B,C,D,E maka C bukan superkey.
Tidak memenuhi definisi 3NF. Jadi R bukan 3NF. Agar R memenuhi 3NF maka
didekomposisi menjadi :
R1=(A,B,C) dan R2=(C,D,E) sehingga R1 dan R2 memenuhi 3NF.
2. Tabel Pekerjaan
Belum Normal:
NIP
001

Nama
Man

Jabatan
Analisis

002

Rizal

Analisis

003

Hanif

Programer

Normal 2NF
NIP
001
002
003

Nama
Man
Rizal
Hanif

NIP
001
001
002
002

Keahlian
Acces
Oracle
MySQL
Oracle

Jabatan
Analisis
Analisis
Programer

Lama
6 tahun
3 tahun
2 tahun
4 tahun

Keahlian
Acces
Oracle
MySQL
Oracle
C
VB
Java

Lama
6 tahun
3 tahun
2 tahun
4 tahun
4 tahun
5 tahun
8 tahun

003
003
003

C
VB
Java

4 tahun
5 tahun
8 tahun

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

NIP
001
001
002
002
003
003
003

Jabatan
Analisis
Analisis
Analisis
Analisis
Programer
Programer
Programer

Lama
6 tahun
3 tahun
2 tahun
4 tahun
4 tahun
5 tahun
8 tahun

Jabatan
Analisis
Analisis
Analisis
Analisis
Programer
Programer
Programer

Keahlian
Acces
Oracle
MySQL
Oracle
C
VB
Java

2. Tabel Sales
Belum Normal
Id_Sales
S001
S002
S003
S004
S005

Nama_Sales
Ria
Anti
Ani
Maya
Wulan

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

Nama_Sales

Telepon
3513214, 3541245
6548143, 5825143, 7563249
085337732666
6836592
6823928, 081234321454

S001
S002
S003
S004

Nama_Sales
S001
S001
S002
S002
S002
S003
S004
S005
S005
Id_Sales
S001
S001
S002
S002
S002
S003
S004
S005
S005

Ria
Anti
Ani
Maya

Telepon
3513214
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

2. Tabel Mahasiswa
Belum Normal
NIM
201010241
201010242
201010243
201010244

Nama
Siti
Beti
Eli
Rosi

Kode_Matkul
001, 004, 008
002, 005
005, 008
003, 006

201010245

Eci

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

3NF
NIM
201010241
201010242
201010243
201010244
201010245

Nama
Siti
Beti
Eli
Rosi
Eci

001, 007, 009

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

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

2. BCNF
o

Suatu relasi disebut memenuhi BCNF jika dan hanya jika setiap determinan yang
ada pada relasi tersebut adalah candidate key.

Definisi yang lain : Suatu relasi disebut memenuhi BCNF jika untuk setiap FD
nontrivial : X A atribut X adalah superkey.

Untuk normalisasi ke bentuk BCNF, maka tabel 3NF didekomposisi menjadi


beberapa tabel yang masing-masing memenuhi BCNF.

Tujuan membentuk BCNF : multiple candidate key menjadi lebih eksplisit (FD
hanya pada candidate key). Menghindari update anomali yang masih mungkin
terjadi pada 3NF.

Dari definisi 3NF dan BCNF, maka apabila suatu relasi memenuhi BCNF pasti
memenuhi 3NF, tetapi belum tentu sebaliknya.

Contoh :
Diketahui tabel R=(A,B,C) dengan FD : A & B dan B & C maka R bukan BCNF, sebab :
v A Superkey ?
AB (diketahui)
AB dan B & C maka A & C (transitif)
AA (refleksif)
Sehingga A & (A,B,C) atau A & R. Jadi A superkey.
v B Superkey ?
B & C (diketahui)
B&B

(refleksif)

Tapi BA. Sehingga B & A,B,C atau B bukan superkey. Agar R memenuhi BCNF maka
didekomposisi menjadi :
R1=(A,B) ; FD : A & B dan
R2=(B,C) ; FD : B & C. Sehingga R1 dan R2 masing-masing memenuhi BCNF. Sebab A
dan B dua-duanya sekarang menjadi superkey.
0.

Tabel Pekerjaan

Belum Normal
NIP
001

Nama
Man

Jabatan
Analisis

002

Rizal

Analisis

003

Hanif

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

Nama
Man
Man
Rizal
Rizal
Hanif
Hanif
Hanif

1.

Keahlian

Lama
6 tahun
3 tahun
2 tahun
4 tahun
4 tahun
5 tahun
8 tahun

Tabel Sales

Belum Normal
Id_Sales
S001
S002
S003
S004
S005

Nama_Sales
Ria
Anti
Ani
Maya
Wulan

Telepon
3513214, 3541245
6548143, 5825143, 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
S005

Telepon
3513214
3541245
6548143
5825143
7563249
085337732666
6836592
6823928
081234321454

2.

Table Mahasiswa

Belum Normal
NIM
201010241
201010242
201010243
201010244
201010245

Nama
Siti
Beti
Eli
Rosi
Eci

Kode_Matkul
001, 004, 008
002, 005
005, 008
003, 006
001, 007, 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
Eci
Eci

Kode_Matkul
001
004
008
002
005
005
008
003
006
001
007
009

Anda mungkin juga menyukai