Sei sulla pagina 1di 5

Contoh Perpustakaan Normalisasi

Melalui latihan berikut kami mencoba menegaskan pengetahuan normalisasi dengan contoh database yang
disederhanakan untuk perpustakaan kecil.

Buku Kualifikasi Pengarang Tajuk NamaPembaca DateDev


Kode rencana
Variabel Perez Gomez,
1001 murray spiegel mcgrawhill 15/04/2005
kompleks John
DAN.
1004 Visual Basic5 Anaya Rio Teran, Ana 17/04/2005
petroustsos
1005 Statistik murray spiegel mcgrawhill Batu, Rene 16/04/2005
Nancy
Universitas Garcia Roque,
1006 Greenberg dan Oracle Corp. 20/04/2005
Oracle Luis
Priya Nathan
Perez Gomez,
1007 Pemotong 5.01 Ramalho mcgrawhill 18/04/2005
John

Tabel ini tidak memenuhi persyaratan Bentuk Normal Pertama (1NF) yang hanya memiliki bidang atom, karena
nama pembaca adalah bidang yang dapat (dan harus) didekomposisi menjadi nama belakang ayah, nama
keluarga ibu, dan nama depan.

Seperti yang ditunjukkan pada tabel berikut.

1NF
Buku Kualifikasi Pengarang Tajuk Ayah Keibuan Nama DateDev
Kode rencana
Variabel
1001 murray spiegel mcgrawhill perez gomez Juan 15/04/2005
kompleks
DAN.
1004 Visual Basic5 Anaya Sungai teran Ana 17/04/2005
petroustsos
1005 Statistik murray spiegel mcgrawhill Batu Rene 16/04/2005
Universitas Nancy Oracle
1006 Garcia batu Luis 20/04/2005
Oracle Greenberg Corp.
Universitas Oracle
1006 Priya Natan Garcia batu Luis 20/04/2005
Oracle Corp.
1007 Pemotong 5.01 Ramalho mcgrawhill perez gomez Juan 18/04/2005

Seperti dapat dilihat, ada beberapa karakteristik redundansi 1NF.


Bentuk Normal Kedua (2NF) mensyaratkan bahwa tidak ada ketergantungan parsial, atau dengan kata lain,
semua atribut bukan kunci harus bergantung sepenuhnya pada kunci utama.

Saat ini di tabel kami, kami memiliki beberapa dependensi parsial jika kami menganggap kode buku sebagai
atribut kunci.

Misalnya, judul diidentifikasi sepenuhnya oleh kode buku, tetapi nama pembaca tidak terlalu bergantung pada
kode ini, sehingga data ini harus dipindahkan ke tabel lain.

2NF

Buku Kualifikasi Pengarang Tajuk rencana


Kode
1001 Variabel kompleks murray spiegel mcgrawhill
1004 Visual Basic5 DAN. petroustsos Anaya
1005 Statistik murray spiegel mcgrawhill
1006 Universitas Oracle Nancy Greenberg Oracle Corp.
1006 Universitas Oracle Priya Natan Oracle Corp.
1007 Pemotong 5.01 Ramalho mcgrawhill

Tabel baru hanya akan berisi data pembaca.

coderead Ayah Keibua Nama


er n
501 perez gomez Juan
502 Sungai teran Ana
503 Batu Rene
504 Garcia batu Luis

Kami telah membuat tabel untuk menampung data pembaca dan kami juga harus membuat kolom CodLector
untuk mengidentifikasi masing-masing secara unik.

Namun, tata letak database yang baru ini membutuhkan tabel lain untuk menyimpan informasi buku mana yang
diperiksa untuk pembaca mana.

Tabel ini ditunjukkan di bawah ini:


Buku coderead DateDev
Kode er
15/04/200
1001 501 5
17/04/200
1004 502 5
16/04/200
1005 503 5
20/04/200
1006 504 5
18/04/200
1007 501 5

Untuk Bentuk Normal Ketiga (3NF) relasinya harus dalam 2NF dan juga atribut non-kunci harus saling bebas
dan sepenuhnya bergantung pada kunci utama.

Juga ingat bahwa kami mengatakan bahwa ini berarti kolom dalam tabel hanya boleh berisi informasi tentang
entitas yang ditentukan oleh kunci utama, dan oleh karena itu kolom dalam tabel harus berisi data hanya tentang
satu hal.

Dalam contoh 2FN kita, tabel pertama menyimpan informasi tentang buku, penulis, dan penerbit, jadi kita perlu
membuat tabel baru untuk memenuhi persyaratan 3FN.

3NF

Buku Kualifikasi
Kode
1001 Variabel kompleks
1004 Visual Basic5
1005 Statistik
1006 Universitas Oracle
1007 Pemotong 5.01
CodAuthor Pengarang
801 murray spiegel
DAN.
802 petroustsos
Nancy
803 Greenberg
804 Priya Natan
806 Ramalho

CodeEditor Tajuk rencana


901 mcgrawhill
902 Anaya
903 Oracle Corp.

Meskipun kami telah membuat tabel baru sehingga masing-masing hanya memiliki informasi tentang satu
entitas, kami juga kehilangan informasi tentang penulis mana yang telah menulis buku mana dan penerbit yang
sesuai, jadi kami harus membuat tabel lain yang menghubungkan setiap buku dengan penulis dan editorialnya. .

Buku codAutho
Kode r
1001 801
1004 802
1005 801
1006 803
1006 804
1007 806

Buku codeEditor
Kode
1001 901
1004 902
1005 901
1006 903
1007 901
Dan tabel lainnya tidak perlu dimodifikasi.

codereade Ayah Keibuan Nama


r
501 perez gomez Juan
502 Sungai teran Ana
503 Batu Rene
504 Garcia batu Luis

Buku coderead DateDev


Kode er
15/04/200
1001 501 5
17/04/200
1004 502 5
16/04/200
1005 503 5
20/04/200
1006 504 5
18/04/200
1007 501 5

Potrebbero piacerti anche