Normalisasi adalah teknik perancangan yang banyak digunakan sebagai pemandu dalam merancang basis data relasional.

Pada dasarnya, normalisasi adalah proses dua langkah yang meletakkan data dalam bentuk tabulasi dengan menghilangkan kelompok berulang lalu menghilangkan data yang terduplikasi dari table relasional (www.utexas.edu). Istilah Normalisasi berasal dari E. F.Codd, salah seorang perintis teknologi basis data. Selaindipakai sebagai metodologi tersendiri untuk menciptakan struktur tabel 9relasi) dalam basis data (dengan tujuan utnuk mengurangi kemubaziran data) , normalisasi terkadang hanya diipakai sebagai perangkat verifikasi terhadap tabel-tabel yang dihasilkan oleh metodologi lain ( misalnya E-R). Normalisasi memberikan panduan yang sangat membantu bagi pengembang untuk mencegah penciptaan struktur tabel yang kurang fleksibel atau mengurangi keflekxibelan. Kroenke mendefinisikan normalisasi sbagai proses untuk mengubah suatu relasi yang memiliki masalah tertentu ke dalam dua buah relasi atau lebih yang tida memiliki masalah tersebut. Masalah yang dimaksud olej kroenke ini sering disebut dengan istilah anomali. ( Pada beberapa literatur, istilah relasi yang digunakan pada bab ini terkadang digantikan dengan tabel. Istilah relasi digunakan pada bab ini dikarenakan definisi tentang normalisasi memang menggunakan istilah relasi). Teori normalisasi didasarkan pada konsep bentuk normal. Sebuah table relasional dikatakan berada pada bentuk normal tertentu jiak table memenuhi himpunan batasan tertentu. Ada lima bentuk normal yang telah ditemukan. KONSEP DASAR Normalisasi adalah bagian perancangan basisdata. Tanpa normalisasi, system basisdata menjadi tidak akurat, lambat, tidak efisien, serta tidak memberikan data yang diharapkan (www.microsoft-accessolution.co.uk) Pada waktu normalisasi basisdata, ada empat tujuan utama yang harus dicapai, yaitu : 1. Mengatur data dalam kelompok-kelompok sehingga masing-masing kelompok hanya menangani bagian kecil system. 2. Meminimalkan jumlah data berulang dalam basisdata 3. Membuat basisdata yang datanya diakses dan dimanipulasi secara cepat dan efisien tanpa melupakan integritas data

Mengatur data sedemikian rupa sehingga ketika memodifikasi data.jika atribut tidak tergantung pada kunci. 2000). 4. anda hanya mengubah pada satu tempat.jika sebuah atribut hanya tergantung pada sebagian kunci utama gabungan. yaitu mempunyai semua table dalam 3NF (Stephen and Plew. pindahkan atribut ke table lain. 6. Hilangkan data berulang. Bentuk normal domain-key-sebuah model harus terbebas dari semua anomaly (www. ATURAN NORMALISASI Berikut adalah aturan-aturan normalisasi : 1. Hilangkan kelompok berulang-buat table terpisah untuk setiap himpunan atribut yang berhubungan dan tentukan kunci utama pada masing-masing table.4. . 2. Bentuk normal optimal-sebuah model hanya diabtasi oleh fakta sederhana 7.org). 5. Tujuan normalisasi adalah membuat kumpulan table ralasional yang bebas dari data berulang dan dapat dimodifikasi secara benar dan konsisten. pindahkan atribut ke table lain. dan pengaksesan data. Pisahkan relasi majemuk yang berhubungan secara semantic-ada batasan pada informasi yang memperbolehkan pemisahan relasi many to many yang berhungan secara logis. Hilangkan kolom yang tidak tergantung pada kunci. Ini berarti bahwa semua table pada basisdata relasional harus berada pada bentuk normal ketiga (3NF). Saling independen berarti bahwa tidak ada kolom bukan kunci yang tergantung pada sembarang kombinasi kolom lainnya. integritas referensial. 3. Perancang basisdata terkadang menyebut keempat tujuan dengan istilah integritas data. Pisahkan relasi majemuk-tidak ada table yang bisa mengandung data atau lebih relasi 1:n atau n:m yang tidak berhubungan langsung. Sebuah table relasional berada pada 3NF jika dan hanya jika semua kolom bukan kunci adalah (a) saling independen dan (b) sepenuhnya tergantung pada kunci utama. Dua bentuk normal pertama adalah langkah antara untuk mencapai tujuan.datamodel.

Contoh : Tabel Pesanan Pemasok Kartika Citra Yudi Citra Kota Jakarta Bandung Medan Bandung Barang Mouse Monitor CPU Printer Jumlah 5 2 2 1 Seandainya Citra dengan kota Bandung pindah ke Bogor maka pengubahan data hanya dilakukan pada data pertama menjadi : Tabel Pesanan Pemasok Kartika Citra Yudi Citra Kota Jakarta Bogor Medan Bandung Barang Mouse Monitor CPU Printer Jumlah 5 2 2 1 Di sini terlihat bahwa data tentang pemasok Citra tidak sama yang menyebabkan ketidakkonsistenan data. Anomali Penyisipan Anomali ini terjadi pada saat penambahan data ternyata ada elemen yang kosong dan elemen tsb justru menjadi key. Contoh : Tabel Kursus . Penghapusan. dan penyisipan Anomali peremajaan Anomali ini terjadi bila ada perubahan pada sejumlah data yang mubazir.Anomali Anomali adalah proses pada basis data yang memberikan efek samping yang tidak diharapkan ( misalnya menyebabkan ketidakonsistenan data atau membuat suatu data menjadi hilang ketika data dihapus) Macam Anomali terdiri dari • Anomali • Anomali • Anomali peremajaan. tetapi tidak seluruhnya diubah.

Inggris Bhs.Perancis Bhs. shg data menjadi : Tabel Kursus NoSiswa 10 10 10 15 20 Kursus Bhs.Jepang Bhs.Inggris Bhs.Jepang Bhs.Inggris Bhs.Perancis Bhs.Jepang Bhs.Jepang Biaya 60000 80000 70000 60000 70000 Misalnya akan dibuka kursus baru yaitu Bhs. Contoh pada table kursus data NoSiswa 20 akan dihapus karena sudah tidak ikut kursus lagi sehingga akibatnya data kursus bhs jepang dan biaya 70000 akan ikut terhapus.Inggris Bhs.Jerman Biaya 60000 80000 70000 60000 75000 .Perancis Bhs.NoSiswa 10 10 10 15 20 Kursus Bhs.Jepang Bhs. NoSiswa 10 10 10 15 Kursus Bhs.Jerman dengan biaya 75000 akan tetapi belum ada seorangpun yang ikut kursus ini.Jerman Biaya 60000 80000 70000 60000 70000 75000 Anomali penghapusan Anomali ini terjadi apabila dalam satu baris/ tuple ada data yang akan dihapus sehingga akibatnya terdapat data lain yang hilang.Inggris Bhs.Inggris Bhs.

Dependensi fungsional sepenuhnya Definisi : Suatu atribut Y mempunyai dependensi fungsional penuh terhadap X jika •Y •Y mempunyai dependensi fungsional terhadap X dan/atau tidak memiliki dependensi terhadap bagian dari X .Dependensi (Ketergantungan) Konsep dasar pada tahap normalisasi yang menjelaskan hubungan atribut atau secara lebih khusus menjelaskan nilai suatu atribut yang menentukan atribut lainnya. Notasi : X --> Y (X secara fungsional menentukan Y) Contoh : Tabel Pesanan Pembeli P1 P1 P2 P2 P3 P3 Kota Yogya Yogya Jakarta Jakarta Solo Solo Barang B1 B2 B1 B2 B3 B4 Jumlah 10 5 4 7 6 6 Pembeli secara fungsional menentukan kota. Macam-macam dependensi. dengan demikian : Pembeli --> Kota contoh lain : {Pembeli. • Tanda {} biasanya digunakan untuk menentukan lebih dari satu atribut sebagai penentu atau sebagai yang tergantung. sebab setiap pembeli yang sama mempunyai kota yang sama. Barang} --> Jumlah Keterangan: • Bagian yang terletak disebelah kiri tanda panah biasa disebut DETERMINAN / PENENTU dan bagian yang terletak di sebelah kanan panah disebut DEPENDENSI / YANG TERGANTUNG. yaitu : Dependensi fungsional Definisi : Suatu atribut Y mempunyai dependensi fungsional terhadap atribut X jika dan hanya jika setiap nilai X berhubungan dengan sebuah nilai Y.

Dependensi Transitif Definisi : Atribut Z mempunyai dependensi transitif terhadap X bila : •Y memiliki dependensi fungsional terhadap X dependensi fungsional terhadap Y • Z memiliki Contoh : Kuliah Jarkom Basis Data Matematika Fisika Ruang Merbabu Arjuna Merapi Merbabu Tempat Gedung Utara Gedung Selatan Gedung Barat Gedung Timur Waktu Senin Selasa Rabu Kamis Relasi : • Kuliah --> {Ruang. • Ruang Waktu} --> Tempat .Contoh : Pembeli --> Kota {Pembeli. Dependensi Total Definisi : Suatu atribut Y mempunyai dependensi total terhadap atribut X jika •Y •X memiliki dependensi fungsional terhadap X dan memiliki dependensi fungsional terhadap Y Notasi : X<--> Y Contoh : Tabel Pemasok KodePemasok K1 C1 C2 NamaPemasok Kartika Citra Candra Kota Jakarta Bandung Jakarta Pada kasus ini KodePemasok <-->NamaPemasok. Barang} tapi kota mempunyai dependensi fungsional sepenuhnya terhadap pembeli bukan barang. Barang} --> Jumlah Intinya : Kota mempunyai dependensi fungsional terhadap Pembeli atau {Pembeli. karena setiap kode tidak mempunyai nama yang sama.

Terlihat bahwa : Kuliah --> Ruang --> Tempat Dengan demikian Tempat mempunyai dependensi transitif terhadap kuliah Diagram Dependensi Fungsional (Diagram DF) Diagram Dependensi Fungsional (Diagram DF) Adalah diagram yang digunakan untuk menggabarkan dependensi fungsional. Proses pemecahaan ini disebut dengan dekomposisi. Contoh dekomposisi hilang adalah . Seperti contoh diatas dapat digambarkan diagram DF sebagai berikut : Dekomposisi Pada tahap normalisasi sering kali terjadi pemecahan table kedalam bentuk dua atau lebih relasi. Setelah proses dekomposisi tak hilang hasilnya adalah sama 95001 adalah ANDI dan 95001 program studi Ekonomi. dengan hubungan yang dinyatakan dengan tanda panah. Diagram ini menunjukkan hubungan antara atribut yang menjadi penentu atribut lainnya. Syarat : Tidak ada informasi yang hilang ketika suatu relasi dipecah menjadi relasi-relasi lain. Contoh : Terdapat suatu relasi awal sebagai berikut : Nim 95001 95002 95003 Nama Andi Vira Andi Program Studi Ekonomi Teknik Fisika Akan dibentuk kedalam dekomposisi tak hilang menjadi : Nim 95001 95002 95003 Nama Andi Vira Andi Nim 95001 95002 95003 Program Studi Ekonomi Teknik Fisika Pada relasi awal dapat diketahui informasi sebagai berikut : 95001 adalah ANDI program studi Ekonomi.

Nim 95001 95002 95003 Nama Andi Vira Andi Nama Andi Vira Andi Program Studi Ekonomi Teknik Fisika 95001 bernama ANDI. tetapi ANDI dengan program studi Ekonomi atau Fisika? .

kolom x secara fungsional menentukan kolom y. Kolom y pada table relasional R tergantung sepenuhnya pada x jika kolom y tergantung secara fungsional pada himpunan bagian dari x. BENTUK NORMAL PERTAMA (1NF) Contoh yang kita gunakan disini adalah sebuah perusahaan yang mendapatkan barang dari sejumlah pemasok. kita dapat mengatakan bahwa normalisasi adalah proses menghilangkan data berulang dari table relasional dengan memecah table relasional menjadi table-tabel yang lebih kecil. Mengatakan bahwa kolom y tergantung secara fungsional pada x sama dengan mengatakan bahwa nilai kolom x menentukan nilai kolom y. Secara sederhana.y Notasi dapat dibaca bahwa pada table relasional bernama R. yaitu terbentuk dari dua atau lebih kolom. pemecahan table haruslah lossless.x R. maka kolom lainnya harus ditentukan oleh seluruh kolom yang membentuk kunci utama dan tidak hanya beberapa kolom. Jika kolom x adalah kunci utama. Supaya benar. Ketergantungan fungsional penuh diterapkan pada table dengan kunci gabungan. x dan y bisa berupa gabungan kolom.KETERGANTUNGAN FUNGSIONAL Konsep ketergantungan fungsional adalah dasar untuk tiga bentuk normal pertama. Tujuannya adalah agar hanya mempunyai kunci utama pada sebelah kiri ketergantungan fungsional. Ini berarti table-tabel baru dapat digabungkan kembali dengan natural join agar menghasilkan table asli tanpa membentuk data berulang. Sebuah kota dapat . maka semua kolom pada table relasional R harus tergantung secara fungsional pada x. Sebuah kolom y suatu table relasional R dikatakan tergantung secara fungsional pada kolom x jika dan hanya jika setiap nilai x pada R berhubungan dengan tepat satu nilai y pada suatu saat tertentu. Notasi ketergantungan fungsional adalah : R. fungsional penuh berarti bahwa ketika sebuah kunci utama adalah gabungan. Masing-masing pemasok benda pada satu kota.

kota. qty ) dimana p# : kode pemasok (kunci utama) status : kode status kota kota b# qty : nama kota : barang yang dipasok : jumlah barang yang dipasok supaya bisa menggabungkan jumlah barang yang dipasok (qty) secara unik dengan barang (b#) dan pemasok (p#). Semua nilai pada kolom-kolomnya adalah atomic. Ini berarti kolom-kolom tidak mempunyai nilai berulang. Masing-masing pemasok bisa menyediakan banyak barang. Gambar 4. status. kita menggunakan kunci utama gabungan yang tersusun dari b# dan p#.mempunyai lebih dari satu pemasok dan masing-masing kota mempunyai kode status tersendiri. Pemasok p# p1 p1 p1 p1 p1 p1 p2 p2 p3 p4 Status 20 20 20 20 20 20 10 10 10 20 Kota Yogyakarta Yogyakarta Yogyakarta Yogyakarta Yogyakarta Yogyakarta Medan Medan Medan Yogyakarta b# b1 b2 b3 b4 b5 b6 b1 b2 b2 b2 Qty 300 200 400 200 100 100 300 400 200 200 . b#. Table relasionalnya dapat dituliskan sebagai berikut : PEMASOK (p#. Sebuah table relasional secara definisi selalu berada dalam bentuk normal pertama.1 menunjukkan table pemasok dalam 1NF.

b#) kota. UPDATE. Sebuah table relasional berada pada bentuk normal kedua jika dia berada pada 1NF dan setiap kolom bukan kunci yang sepenuhnya tergantung pada kunci utama. DELETE. Perulangan menyebabkan apa yang disebut update anomalies. table pemasok mengandung data berulang. 3. Fakta bahwa pemasok tertentu (p5) berlokasi pada kota tertentu (Bandung) tidak dapat ditambahkan hingga mereka memasok barang. dihapus. Jika sebuah baris dihapus. Jika pemasok p1 pindah dari Yogyakarta ke Jakarta. INSERT. b#). Sebagai contoh anomaly berikut dapat terjadi pada table pemasok: 1. BENTUK NORMAL KEDUA (2NF) Definisi bentuk normal kedua menyatakan bahwa table dengan kunci utama gabungan hanya dapat berada pada 1NF. tetapi juga informasi tentang pemasok. Ini berarti bahwa setiap kolom kunci harus tergantung pada seluruh kolom yang membentuk kunci utama. maka enam baris harus di-update karena adanya perubahan. Table pemasok berada pada 1NF. Ini dapat digambarkan dengan membuat daftar ketergantungan fungsional: P# Kota (p#. atau diupdate. Update anomalies adalah masalah yang timbul ketika informasi ditambahkan.p4 p4 20 20 Yogyakarta Yogyakarta b4 b5 300 400 Gambar : Tabel bentuk normal pertama (1NF) Meskipun berada pada 1NF. 2. informasi tentang lokasi pemasok dan status lokasi harus diulang untuk setiap barang yang dipasok. status status qty Proses mengubah 1NF ke 2NF adalah : . tetapi tidak pada 2NF. maka yang hilang tidak hanya informasi tentang barang dan jumlahnya. Sebagai contoh. tetapi tidak pada 2NF karena status dan kota tergantung secara fungsional hanya pada kolom p# dari kunci gabungan (p#.

kecuali penentu yang akan berfungsi sebagai kunci tamu. 4. Pindahkan kolom-kolom yang ditentukan dari table asal ke table baru.1. Penentu akan menjadi kunci utama pada table baru. kita memindahkan kolom p#. 3. 5. Kolom p# menjadi kunci utama table ini. Table asal bisa diberi nama baru. status. 2. Hapus kolom yang baru dipindahkan dari table asal. Tentukan sembarang kolom penentu selain kunci gabungan dan kolom-kolom yang ditentukannya. Buat dan beri nama table baru untuk masing-masing penentu dan kolom-kolom yang ditentukannya. Pada contoh. dan kota ke table baru yang disebut PEMASOK2. Gambar dibawah ini menunjukkan hasilnya. PEMASOK2 BARANG p# p1 p2 p3 p4 p5 Status 20 10 10 20 30 kota Yogyakarta Medan Medan Yogyakarta Bandung .

semua atribut bukan kunci tergantung secara fungsional hanya pada kunci utama. Menghapus sembarang baris pada PEMASOK2 akan menghilangkan informasi status tentang kota tersebut serta hubungan antara pemasok dan kota. Dengan kata lain.status Perlu dicatat bahwa PEMASOK2. BENTUK NORMAL KETIGA (3NF) Bentuk normal ketiga mengharuskan semua kolom pada table relasional tergantung hanya pada kunci utama. Table BARANG sudah dalam bentuk normal ketiga. qty. menentukan kolom lainnya.b#). Konsep ketergantungan transitif dapat digambarkan dengan menunjukkan ketergantungan fungsional pada PEMASOK2.status PEMASOK2. tetapi belum berada pada 3NF karena dia mengandung ketergantungan transitif. DELETE. yaitu : anomaly pada contoh. tergantung sepenuhnya pada kunci utama (p#. yang ditentukan oleh kunci utama.p# PEMASOK2. baik oleh kunci utama. 2.p# p1 p1 p1 p1 p1 p1 p2 p2 p3 p4 p4 Gambar : Tabel bentuk normal kedua (2NF) Table masig mengandung PEMASOK2. Ketergantungan transitif terjadi ketika sebuah kolom bukan kunci. kota. yaitu : PEMASOK2. PEMASOK masih berada pada 2NF. sebuah table berada pada bentuk normal ketiga (3NF) jika table sudah berada pada 2NF dan setiap kolom yang bukan kunci tidak tergantung secara transitif pada kunci utamanya. Fakta bahwa kota tertentu mempunyai status tertentu (Semarang mempunyai status 40) tidak dapat dimasukkan hingga ada pemasok di kota tersebut.kota PEMASOK2.p# PEMASOK2. p#. Status ditentukan.kota PEMASOK2. INSERT. Kolom bukan kunci. p4 b# b1 b2 b3 b4 b5 b6 b1 b2 b2 b2 b4 b5 qty 300 200 400 200 100 100 300 400 200 200 300 400 1. Secara definisi. maupun kolom bukan kunci. .

kota tetap dibiarkan karena akan berfungsi sebagai kunci asing bagi KOTA_STATUS.kota . PEMASOK_KOTA KOTA_STATUS P# P1 P2 P3 P4 P5 Kota Yogyakarta Medan Medan Yogyakarta Bandung kota Yogyakarta Medan Bandung Semarang Status 20 10 30 40 Perubahan ke 3NF menghasilkan tiga table dan dapat dinyatakan dalam “pseudo SQL” sebagai berikut : BARANG (p#. 5.Proses mengubah table menjadi 3NF adalah : 1.qty) Kunci utama (p#. 2. kecuali penentu yang akan berfungsi sebagai kunci tamu. dan table asal diberi nama baru PEMASOK_KOTA.b#) Foreign Key (p#) references PEMASOK_KOTA.p# PEMASOK_KOTA (p#. Pindahkan kolom yang ditentukan dari table asal ke table baru. Penentu menjadi kunci utama table baru. 4. Status dihapus dari table asal. Gambar berikut menunjukkan hasilnya. Buat dan beri nama table baru untuk masing-masing penentu dan kolom yang ditentukannya.kota) Kunci utama (p#) Foreign Key (kota) references KOTA_STATUS. 3. Table asal bisa diberi nama baru.b#. Hapus kolom yang baru saja dipindahkan dari table asal. Tentukan semua penentu selain kunci utama dan kolom yang ditentukannya. Untuk mengubah PEMASOK2 menjadi 3NF. kita membuat table baru yang disebut KOTA_STATUS dan memindahkan koloom kota dan status ke table baru.

3. fakta tentang pemasok baru dapat ditambahkan meskipun mereka belum memasok barang. status) Kunci utama (kota) Keuntungan bentuk normal ketiga adalah menghilangkan data berulang sehingga akan menghemat ruang dan mengurangi anomaly. semua masalah normalisasi hanya melibatkan table yang mempunyai tiga kolom atau lebih dan semua kolom adalah kunci. 2. Banyak praktisi berpendapat bahwa menempatkan entitas pada 3NF sudah cukup karena sangat jarang entitas yang berada pada 3NF bukan merupakan 4NF dan 5NF. Bentuk normal Boyce-Code (BCNF) adalah versi 3NF yang lebih teliti dan berhubungan dengan table relasional yang mempunyai (a) banyak kunci kandidat. Demikian pula. Sebuah table relasional berada pada BCNF jika dan hanya jika setiap penentu adalah kunci kandidat. Perubahan lokasi pemasok atau status suatu kota hanya membutuhkan modifikasi satu baris. Sebuah kolom penentu adalah kolom dimana kolom-kolom lain sepenuhnya tergantung secara fungsional. INSERT. UPDATE. . Lebih lanjut. Fakta tentang status sebuah kota . Informasi tentang barang yang dipasok dapat dihapus tanpa menghilangkan tentang pemasok atau kota. Semarang mempunyai status 40. dapat ditambahkan meskipun tidak ada pemasok di kota tersebut. (b) kunci kandidat gabungan. mereka berpendapat bahwa keuntungan yang didapat dari mengubah entitas ke 4NF dan 5NF sangat kecil sehingga tidak perlu dikerjakan. BENTUK NORMAL BOYCE-CODE (BCNF) Setelah 3NF. BCNF didasarkan pada konsep penentu. BENTUK NORMAL KEEMPAT (4NF) Sebuah table relasional berada pada bentuk normal keempat (4NF) jika dia dalam BCNF dan semua ketergantungan multivalue merupakan ketergantungan fungsional.KOTA_STATUS (kota. dan (c) kunci kandidat yang saling tumpang tindih. DELETE. peningkatan pada coontoh table diatas adalah : 1. Sebagai contoh.

Ketergantungan gabungan berarti bahwa sebuah table. Gambar berikut menunjukkan hasilnya. R.Bentuk normal keempat (4NF) didasakan pada konsep ketergantungan multivalue (MVD). Hubungan antara peg# dan pry# merupakan ketergantungan multivalue karena untuk setiap pasang nilai peg#/ahli pada table.A R. Jika kita mencatat informasi ini pada satu table. ketiga atribut harus digunakan sebagai kunci karena tidak ada satu atribut pun yang dapat secara unik mengidentifikasikan sebuah record. ada sebuah table relasional R dengan kolom A. Sebuah kertergantungan multivalue terjadi ketika dalam sebuah table relasional yang mengandung setidaknya tiga kolom. dan C. maka R. pegawai ditugaskan ke banyak proyek dan ia mempunyai banyak keahlian. Empat bentuk normal pertama berdasarkan pada konsep ketergantungan fungsional. tetapi kolom lain berbeda.B Adalah benar jika dan hanya jika himpunan nilai B yang cocok dengan pasangan nilai A dan nilai C pada R hanya tergantung pada nilai A dan tidak tergantung pada nilai C. peg# 1211 1211 pry# p1 p3 peg# 1211 1211 1211 ahli analisis perancangan pemrograman BENTUK NORMAL KELIMA (5NF) Sebuah table berada pada bentuk normal kelima (5NF) jika dia tidak dapat mempunyai dekomposisi lossless menjadi sejumlah table lebih kecil. himpunan nilai pry# yang berhubungan hany ditentukan oleh peg# dan tidak tergantung pada ahli. R. R. Hubungan antara peg# dan ahli merupakan ketergantungan multivalue karena himpunan nilai ahli untuk pasangan peg#/ pry# selalu hanya tergantung pada peg#. Untuk mengubah sebuah table dengan ketergantungan multivalue kedalam 4NF. satu kolom mempunyai banyak baris bernilai sama. pindahkan masing-masing pasangan MVD ke table baru.A (kolom A menentukan kolom B).B dipenuhi jika dan hanya jika Misalnya. yaitu R. setelah dekomposisi .C dipenuhi pula.A MVD selalu terjadi dalam pasangan. yaitu : Misalnya.sedangkan bentuk normal kelima berdasarkan pada konsep ketergantugan gabungan (join dependence). Definisi secara formal diberikan oleh CJ Date. B.

kita menambahkan data pegawai (1544) yang menggunakan keahlian pemrograman pada proyek 11. Menambah sebuah record pada sebuah table yang bukan 5NF menimbulkan hasil yang salah ketika table didekomposisi lalu digabung kembali. Berikut ini adalah informasinya : peg# 1211 1211 pty# 11 28 ahli Perancangan Pemrograman Kemudian. misalkan kita mempunyai pegawai yang menggunakan keahlian perancangan pada satu proyek dan keahlian pemrograman pada proyek lainnya. ada dua pernyataan yang salah. 5NF menunjukkan ketika sebuah table tidak dapat dikomposisi lagi. table hasil gabungan mengandung data yang salah. kita dekomposisi table menjadi dua table seperti yang dilakukan sebelumnya. Ketika kita menggabungkan kembali. peg# 1211 1211 1544 pty# 11 28 11 ahli Perancangan Pemrograman Pemrograman Kemudian. yaitu : . Dengan kata lain. harus dapat digabungkan kembali untuk membentuk table asal.menjadi tiga atau lebih table yang lebih kecil. peg# 1211 1211 1211 1544 1544 pty# 11 11 28 11 11 ahli Perancangan Pemrograman Pemrograman Perancangan Pemrograman data salah data salah Dengan menambah satu data baru ke table yang bukan 5NF. Sebgai contoh.

pegawai 1544 harus menggunakan keahlian perancangan dalam proyek 11. .   Pegawai 1211 telah ditugaskan ke proyek 11 Proyek 11 membutuhkan keahlian pemrograman Oleh karena itu. pegawai 1211 harus menggunakan keahlian pemrograman ketika ditugaskan ke proyek 11 Pernyataan kedua :    Pegawai 1544 telah ditugaskan ke proyek 11 Proyek 11 membutuhkan keahlian perancangan Oleh karena itu.

Sign up to vote on this title
UsefulNot useful