Anda di halaman 1dari 39

PENORMALAN

1
2
3
4
A B atau A B

 Jika B bersandar fungsi atas A dalam satu


hubungan ABC, ini bermakna bila dua
rangkap mempunyai nilai A yang sama,
nilai B juga mestilah sama.
 Tetapi bagi satu nilai B, mungkin terdapat
beberapa nilai A yang tidak sama.
 Perhubungan daripada A ke B adalah M:1.

5
 Cth
diberi satu skima hubungan STAF-PROJEK

STAF-PROJEK (NoStaf, NoProjek, Peruntukan)

 Seorang staf hanya boleh membuat satu projek


tetapi satu projek boleh dikongsi oleh beberapa
orang staf.
 Setiap projek diberi satu peruntukan.
 NoStaf dan NoProjek adalah unik.

6
 NoProjek bersandar fungsi atas NoStaf
tetapi sebaliknya tidak benar, iaitu NoStaf
tidak bersandar fungsi atas NoProjek.
 Peruntukan bersandar fungsi atas NoProjek
(sebenarnya bersandar fungsi atas NoStaf)

NoStaf NoProjek Peruntukan

7
8
 Atribut NoProjek menentukan secara fungsian
atribut Peruntukan tetapi ia bukan kunci primer
kerana NoStaf tidak bersandar fungsi di atasnya.
 NoProjek dikenali sebagai atribut penentu.
 Atribut penentu menentukan secara fungsian satu
atau lebih atribut lain tetapi ia tidak semestinya
satu kunci primer.
 KF yang diperbincangkan di dalam topik ini adalah
KF yang tidak ‘trivial’.
 Suatu KF adalah ‘trivial’ sekiranya atribut di
sebelah kanan anak panah adalah satu set subset
(tidak semestinya subset ‘proper’) bagi atribut di
sebelah kiri.
9
Masalah lewahan dalam hubungan
 Pengulangan atau lewahan data
 Anomali kemaskinian

Cth masalah lewahan data :


PELGRED (NoPelajar, NamaPel, Major,
UnitBerijazah, KodKursus, NamaKur, Unit,
MataGred)

10
NoPelajar NamaPel Major Unit Kod NamaKur Unit Mata
Berijazah Kursus Gred
P1050 Azura Sains 118 SK001 Penghantar 2 2.5
Komputer Sistem
P1050 Azura Sains 118 SK002 Sistem 4 3.0
Komputer Komputer
L2115 Chong Sistem 125 SM100 Sistem 4 3.0
Maklumat Maklumat
L4213 Karim Kejuruteraan 130 KP222 C++ 4 3.0
Perisian
P2020 Zarina Sistem 125 SM100 Sistem 4 3.5
Maklumat Maklumat
P4000 Ann Sistem 125 SM100 Sistem 4 2.0
Maklumat Maklumat

Jadual 1 : Satu Ketikaan Hubungan PELGRED


11
 Berdasarkan jadual yang ditunjukkan, maklumat
Azura diulang bagi setiap kursus yang diambil.
 Maklumat kursus Sistem Maklumat diulang bagi
setiap pelajar yang mengambilnya.
 Pembaziran ruang storan bagi jadual asas dan
mendedahkannya kepada keadaan
ketakselarasan data.
Anomali Kemaskinian :
1. Anomali Sisipan
2. Anomali Hapusan
3. Anomali Ubahsuaian.

12
1. Anomali Sisipan
 Keadaan yang tidak diingini, kejanggalan atau
masalah yang dihadapi semasa cuba menyisip satu
rangkap baru ke dalam jadual yang tidak
mempunyai struktur yang sempurna.
 Berlaku dalam dua keadaan :
a) Menyisip rekod baru yang sebahagian maklumat
mengenainya telah wujud dalam jadual.
b) Menyisip rangkap baru yang sebahagian
maklumat belum wujud dalam jadual, mungkin
tidak dapat menyisipnya langsung.
13
14
15
16
17
NoPelajar NamaPel Major UnitBerijazah KodKursus NamaKur Unit MataGred
P1050 Azura SK 118 SK001 Peng 2 2.5
Sistem
SK002 Sistem 4 3.0
Komputer
L2115 Chong SM 125 SM001 Sistem 4 3.0
Maklumat

Jadual 2 : Jadual Tak Ternormal


Masalah : Satu kemasukan NoPelajar P1050 sepadan dengan lebih
satu masukan KodKursus.

Atasi : Hubungan Ternormal boleh diperolehi dengan ulang


rangkap
bagi pelajar P1050 seperti dalam Jadual Ternormal.
18
NoPelajar NamaPel Major UnitBerijazah KodKursus NamaKur Unit MataGred
P1050 Azura SK 118 SK001 Peng 2 2.5
Sistem
P1050 Azura SK 118 SK002 Sistem 4 3.0
Komputer
L2115 Chong SM 125 SM001 Sistem 4 3.0
Maklumat

Jadual 3 : Jadual Ternormal

19
 Terdapat 2 pendekatan untuk menukarkan satu jadual
tak ternormal kepada satu jadual atau hubungan dalam
bentuk normal pertama.

1. Buang kumpulan berulang dengan menyisip semula


data-data yang tidak berulang ke dalam lajur-lajur
yang berkenaan bagi setiap baris rangkap nilai
berulang.
2. Camkan satu kunci primer bagi jadual tak
ternormal. Keluarkan bhg kumpulan berulang dan
salin ke dlm satu jadual baru bersama-sama kunci
primer. Kemudian camkan kunci primer bagi kedua-
dua hubungan.
20
Penghuraian Kepada 1NF
 Jadual Ternormal boleh dihuraikan kepada dua
jadual iaitu jadual PELAJAR dan KURSUS.
 Kunci primer bagi jadual asal yang tak ternormal
ialah NoPelajar dan KodKursus.
 Ia akan diteruskan menjadi kunci primer bagi
jadual yang baru dihasilkan.
 Kunci primer bagi jadual PELAJAR adalah
NoPelajar.

21
NoPelajar NamaPel Major UnitBerijazah
P1050 Azura Sains 118
Komputer
L2115 Chong Sistem 125
Maklumat

PELAJAR ( NoPelajar, NamaPel, Major, UnitBerijazah)

NoPelajar KodKursus NamaKur Unit MataGred


P1050 SK001 Penghantar Sistem 2 2.5

P1050 SK002 Sistem Komputer 4 3.0

L2115 SM100 Sistem Maklumat 4 3.0

KURSUS (NoPelajar, KodKursus, NamaKur, Unit, MataGred)

Jadual 4: Penghuraian Jadual kepada 1NF 22


Bentuk Normal Kedua (2NF)
 Bergantung kepada konsep kebersandaran
fungsian penuh.

Kebersandaran Fungsian Penuh


 Sekiranya A dan B adalah atribut-atribut bagi
hubungan H, B dikatakan bersandar fungsi
penuh atas A sekiranya B adalah bersandar
fungsi atas A tetapi tidak bersandar fungsi
atas mana-mana subset proper bagi A.
23
NamaPel
NoPelajar
Major

MataGred UnitBerijazah

NamaKur
KodKursus
Unit

Rajah 1 : KF bagi Hubungan PELGRED

24
Daripada gambarajah, hubungan berikut dpt ditunjuk
NoPelajar  (NamaPel, Major, UnitBerijazah)
KodKursus  (NamaKur, Unit)
Major  UnitBerijazah
(NoPelajar, KodKursus)  MataGred

 Dari sudut pandangan kebersandaran fungsian,


masalah berpunca drp kunci primer iaitu NoPelajar,
KodKursus.
 Kombinasi (NoPelajar, KodKursus) dapat
mengecam setiap rangkap dalam hubungan
PELGRED secara unik.
25
Sambungan…
 MataGred bersandar fungsi atas keseluruhan kunci
primer, manakala atribut lain bersandar fungsi atas
hanya sebahagian drp kunci primer, iaitu sama ada
atas NoPelajar atau KodKursus.
 Keadaan ini dikenali sebagai kebersandaran
fungsian separa.
 Inilah punca masalah sebenar hubungan PELGRED.
 MataGred dikatakan bersandar fungsi penuh atas
kunci primer manakala atribut lain bersandar
fungsi separa atas kunci primer.

26
Takrif 2NF
 Suatu hubungan adalah dalam 2NF
sekiranya ia berada dalam 1NF dan semua
atribut bukan kunci primer bersandar penuh
atas kunci primer.
 Syarat bentuk normal kedua hanya perlu
diuji ke atas hubungan yang kunci
primernya ialah kunci rencam.
 Suatu hubungan ternormal yang
mempunyai kunci primer tunggal adalah
secara automatik berada dalam 2NF.
27
Penghuraian Kepada 2NF
 Hubungan PELGRED perlu dihuraikan
supaya tiada kebersandaran fungsian separa
dan sekaligus menukar kepada 2NF.
 MataGred bersandar penuh atas kunci
primer.
 (NamaPel, Major, UnitBerijazah) bersandar
fungsi separa atas kunci NoPelajar
 (NamaKur, Unit) bersandar separa atas
kunci KodKursus.

28
 Huraikan PELGRED kepada tiga hubungan seperti
berikut:

GRED(NoPelajar, KodKursus, MataGred)


PELAJAR (NoPelajar, NamaPel, Major,
UnitBerijazah)
KURSUS (KodKursus, NamaKur, Unit)

 Tiada lagi wujud kebersandaran separa, semua


atribut bukan kunci primer bersandar penuh atas
kunci primer.

29
KURSUS GRED
KodKursus NamaKur Unit NoPelajar KodKursus MataGred
SK001 Penghantar Sistem 2 P1050 SK001 2.5
SK002 Sistem Komputer 4 P1050 SK002 3.0
SM100 Sistem Maklumat 4
L4213 KP222 3.0
KP222 C++ 4
P2020 SM100 3.0
PELAJAR

NoPelajar NamaPel Major UnitBerijazah


P1050 Azura Sains Komputer 118
L2115 Chong Sistem Maklumat 125
L4213 Karim Kejuruteraan Perisian 130
P2020 Zarina Sistem Maklumat 125
P4000 Ann Sistem Maklumat 125
Jadual 5 : Contoh Ketikaan Bagi Hubungan Dalam 2 NF
30
Bentuk Normal Ketiga (3NF)
 Takrifan 3NF : Suatu hubungan adalah dalam 3NF
sekiranya ia berada dalam 2NF dan tiada atribut
bukan kunci primer bersandar transitif atas kunci
primer.
 Kebersandaran transitif berlaku apabila wujud
sekurang-kurangnya tiga atribut, A, B dan C dalam
satu hubungan hinggakan jika C bersandar fungsi
atas B dan B bersandar fungsi atas A maka C
bersandar fungsi atas A secara transitif melalui B;
dengan syarat A tidak bersandar fungsi atas B atau
C.

31
 Hubungan 2NF boleh ditukar kepada 3NF dengan
menghuraikannya kepada hubungan-hubungan baru supaya
kebersandaran transitif tidak wujud lagi.
 Panduan:
1. Kenalpasti kebersandaran transitif dan camkan penentu
yang bukan kunci primer.
2. Kumpulkan atribut yang bersandar transitif bersama satu
salinan penentunya ke dalam satu hubungan baru.Atribut
yang tinggal dikumpulkan sebagai satu hubungan baru.
3. Bagi satu hubungan H dengan atribut A, B dan C di mana
A B dan B C, maka huraikan H kepada H1 dan H2
dengan skima :
H1 (A, B)
H2 (B, C)

32
PELAJAR
NoPelajar NamaPel Major UnitBerijazah
P1050 Azura Sains Komputer 118
L2115 Chong Sistem Maklumat 125
L4213 Karim Kejuruteraan Perisian 130
P2020 Zarina Sistem Maklumat 125
P4000 Ann Sistem Maklumat 125
Jadual 6 : Jadual PELAJAR
Penghuraian Kepada 3NF
Berdasarkan Jadual Pelajar di atas, ia masih mengalami
anomali kemaskinian (sisipan, hapusan & ubahsuai
disebabkan kewujudan kebersandaran transitif.

33
NoPelajar Major

NamaPel UnitBerijazah

 Rajah KF di atas menunjukkan hubungan pelajar.


 UnitBerijazah bersandar transitif atas kunci primer
iaitu NoPelajar.
 Mengikut panduan, hubungan PELAJAR harus
dihuraikan bagi menghilangkan kebersandaran
transitif.

34
 Kumpulkan atribut yang bersandar transitif iaitu
UnitBerijazah bersama satu salinan penentunya, iaitu
Major ke dalam hubungan baru UNIT_MAJOR dan
letakkan atribut-atribut yang lain iaitu NoPelajar,
NamaPel dan Major di dalam satu hubungan lain,
PELAJAR_MAJOR.
 Hubungan PELAJAR boleh dihuraikan kepada 2
hubungan baru iaitu:
UNIT_MAJOR (Major, UnitBerijazah)
PELAJAR_MAJOR (NoPelajar, NamaPel, Major)
 Kedua-dua hubungan berada di dalam 3NF kerana
tidak wujud kebersandaran separa dan kebersandaran
transitif atas kunci primer.
35
 Sebagai rumusan kepada proses penormalan terhadap
hubungan PELGRED, penghuraian-penghuraian yang
telah dilakukan terhadap hubungan asal dalam 1NF
kepada hubungan 3NF dalam Rajah 2.
 Skima hubungan (dalam 3NF) hasil drp penghuraian
hubungan PELGRED dikumpulkan semula .
PELAJAR_MAJOR (NoPelajar, NamaPel, Major)
KURSUS (KodKursus, NamaKur, Unit)
UNIT_MAJOR (Major, UnitBerijazah)
GRED (NoPelajar, KodKursus, MataGred)

36
1NF 2NF 3NF
GRED GRED

KURSUS
PELGRED KURSUS

PELAJAR_MAJOR
PELAJAR

UNIT_MAJOR
Singkirkan Singkirkan
Kebersandaran penuh Kebersandaran transitif
Rajah 2 : Penghuraian Hubungan PELGRED kepada 3NF
37
Penormalan dan
Rekabentuk Pangkalan Data

38
TERIMA KASIH

39

Anda mungkin juga menyukai