Comments (0)
Tutorial Rancangan Basis Data – Bagian 2
Apa itu Normalisasi?
Normalisasi adalah teknik rancangan basis data dengan cara mengatur tabel sehingga mengurangi redundansi dan ketergantungan data.
Normalisasi membagi tabel yang lebih besar ke tabel yang lebih kecil dan menautkannya menggunakan hubungan.
Penemu model relasional Edgar Codd mengusulkan teori normalisasi dengan pengenalan Bentuk Normal Pertama, dan ia terus memperluas teori dengan Bentuk Normal Kedua dan Ketiga. Kemudian ia bergabung dengan Raymond F. Boyce untuk mengembangkan teori Bentuk Normal Boyce-Codd.
Teori Normalisasi Data dalam SQL masih terus dikembangkan. Misalnya, ada diskusi bahkan pada Bentuk Normal ke-6. Namun, dalam sebagian besar aplikasi praktis, normalisasi mencapai yang terbaik dalam Bentuk Normal Ketiga. Evolusi teori Normalisasi diilustrasikan di bawah ini.
Contoh Normalisasi Basis Data
Misalkan ada sebuah perpustakaan video mengelola basis data film yang disewa. Tanpa normalisasi, semua informasi disimpan dalam satu tabel seperti yang ditunjukkan di bawah ini.

Tabel 1
Di sini Anda melihat kolom Movies rented yaitu film yang disewa, memiliki beberapa nilai.
Bentuk Normal Basis Data
Sekarang mari kita beralih ke Bentuk Normal Pertama.
Aturan 1NF (Bentuk Normal Pertama)
- Setiap sel tabel harus berisi nilai tunggal.
- Setiap baris data harus unik.
Contoh 1NF

Tabel 1: Dalam bentuk 1NF
Sebelum kita melanjutkan, mari pahami beberapa hal.
Apa itu Kunci?
KUNCI adalah nilai yang digunakan untuk mengidentifikasi baris data dalam tabel secara unik. KUNCI bisa berupa satu kolom atau kombinasi beberapa kolom.
Catatan: Kolom dalam tabel yang TIDAK digunakan untuk mengidentifikasi baris data secara unik disebut kolom non-kunci.
Apa itu Kunci Primer?
Kunci primer adalah nilai kolom tunggal yang digunakan untuk mengidentifikasi baris basis data secara unik.
Ini memiliki atribut berikut:
- Kunci primer tidak boleh bernilai Nol/Null
- Nilai kunci primer harus unik
- Nilai kunci primer harus jarang diubah
- Kunci primer harus diberi nilai saat baris data baru dimasukkan
Apa itu Kunci Komposit?
Kunci komposit adalah kunci primer yang terdiri dari beberapa kolom yang digunakan untuk mengidentifikasi baris data secara unik.
Dalam basis data kita, terdapat dua orang dengan nama yang sama yaitu Robert Phil, tetapi mereka tinggal di tempat yang berbeda.
Oleh karena itu, kita membutuhkan Nama Lengkap dan Alamat untuk mengidentifikasi baris data secara unik. Ini yang disebut kunci komposit.
Mari kita beralih ke bentuk normal kedua 2NF.
Aturan 2NF (Bentuk Normal Kedua)
- Aturan 1: Berada dalam 1NF
- Aturan 2: Kunci Primer Kolom Tunggal
Jelas bahwa kita tidak dapat bergerak lebih jauh untuk membuat basis data sederhana dalam bentuk Normalisasi Kedua kecuali kita membagi tabel di atas.

Tabel 1

Tabel 2
Kita telah membagi tabel 1NF menjadi dua tabel yaitu Tabel 1 dan Tabel 2. Tabel 1 berisi informasi keanggotaan. Tabel 2 berisi informasi tentang film yang disewa.
Kita juga telah menambahkan kolom baru yang disebut Membership ID yang merupakan kunci primer untuk Tabel 1. Baris data dapat diidentifikasi secara unik di Tabel 1 menggunakan Membership ID.
Basis Data – Kunci Tamu
Dalam Tabel 2, Membership ID adalah Foreign Key/Kunci Tamu.
Kunci Tamu mengacu pada kunci primer dari tabel lain. Ini membantu menghubungkan tabel-tabel Anda.
- Kunci tamu dapat memiliki nama yang berbeda dari kunci primernya
- Kunci tamu memastikan baris dalam satu tabel memiliki kesesuaian dengan baris dari tabel lainnya
- Tidak seperti kunci primer, kunci tamu tidak harus unik – seringnya tidak unik
- Kunci tamu dapat bernilai nol walaupun kunci primernya tidak
Mengapa anda membutuhkan kunci tamu?
Misalnya, seorang yang belum berpengalaman memasukkan sebuah baris data ke dalam Tabel B.
Ia hanya akan bisa memasukkan nilai ke dalam kunci tamu yang lebih dulu ada di kunci unik dalam tabel induk. Hal ini membantu dalam integritas referensial.
Masalah tersebut dapat diatasi dengan mendeklarasikan Membership ID dari Tabel 2 sebagai kunci tamu dari Membership ID dari Tabel 1.
Kemudian jika seseorang mencoba untuk memasukkan nilai ke dalam kolom data Membership ID yang tidak terdapat pada tabel induk, kesalahan akan ditampilkan.
Apa itu ketergantungan fungsional transitif?
Ketergantungan fungsional transitif (transitive functional dependencies) adalah ketika mengubah kolom non-kunci, yang dapat menyebabkan kolom non-kunci lainnya berubah.
Misalnya Tabel 1. Mengubah kolom non-kunci Full Name dapat mengubah Salutation.
Mari beralih ke 3NF.
Aturan 3NF (Bentuk Normal Ketiga)
- Aturan 1: Berada dalam 2NF
- Aturan 2: Tidak memiliki ketergantungan fungsional transitif
Untuk mengubah tabel 2NF menjadi 3NF, kita perlu membagi tabel kembali.
Contoh 3NF

Tabel 1

Tabel 2

Tabel 3
Sekali lagi kita telah membagi tabel dan membuat tabel baru yang berisi data sapaan/salutation.
Tidak ada ketergantungan fungsional transitif dan oleh karena itu tabel kita sudah menjadi 3NF.
Di Tabel 3 Salutation ID adalah kunci primer, dan di Tabel 1 Salutation ID adalah kunci tamu terhadap primer di Tabel 3.
Sekarang contoh kecil kita berada pada tingkat yang tidak dapat lagi diuraikan untuk mencapai bentuk normalisasi yang lebih tinggi. Bahkan, sudah dalam bentuk normalisasi yang paling tinggi. Upaya terpisah untuk pindah ke level normalisasi data selanjutnya biasanya diperlukan dalam database yang rumit. Namun, tingkat normalisasi berikutnya akan dibahas secara singkat sebagai berikut.
Bentuk Normal Boyce-Codd (Boyce-Codd Normal Form/BCNF)
Bahkan ketika basis data dalam Bentuk Normal Ketiga, masih akan ada anomali yang dihasilkan jika memiliki lebih dari satu Kunci Kandidat.
Terkadang BCNF juga disebut sebagai Bentuk Normal Ke-3,5.
Aturan 4NF (Bentuk Normal Keempat)
Jika tidak ada tabel basis data yang misalnya berisi dua data atau lebih, independen dan multinilai yang menggambarkan entitas yang relevan, maka itu dalam Bentuk Normal Ke-4.
Aturan 5NF (Bentuk Normal Kelima)
Tabel berada dalam Bentuk Normal Kelima hanya jika berada di 4NF dan tidak dapat diuraikan menjadi sejumlah tabel yang lebih kecil tanpa kehilangan data.
Aturan 6NF (Bentuk Normal Keenam)
6NF tidak distandarisasi, namun, ini sedang dibahas oleh para ahli basis data untuk beberapa waktu. Mudah-mudahan dalam waktu dekat, kita akan memiliki definisi yang jelas & standar untuk Bentuk Normal ke-6.
Ringkasan
- Perancangan basis data sangat penting untuk keberhasilan penerapan sistem manajemen basis data yang memenuhi kebutuhan data sistem perusahaan.
- Normalisasi membantu menghasilkan sistem basis data yang hemat biaya dan memiliki model keamanan yang lebih baik.
- Ketergantungan fungsional adalah komponen yang sangat penting dari proses normalisasi data.
- Sebagian besar sistem basis data adalah basis data yang dinormalisasi hingga bentuk normal ketiga.
- Kunci primer yang diidentifikasi secara unik dicatat dalam Tabel dan tidak boleh bernilai nol.
- Kunci tamu membantu menghubungkan tabel dan mengacu pada kunci utama.
Demikian penjelasan tentang teknik Normalisasi. Sedangkan penjelasan tentang teknik Pemodelan ER dilanjutkan di bagian 3.
(Sumber & Gambar: www.guru99.com)
Recent Posts
Recent Comments
Archives
LATEST VIDEO
Tags
- ai
- analysis
- application
- art
- articles
- artificial intelligence
- audio
- block chain
- business
- cloud
- coding
- cryptocurrency
- culture
- data
- database
- design
- desktop
- development
- digital
- economy
- encryption
- enterprise
- events
- framework
- hardware
- health
- html/css
- Image
- industry
- infomation
- information
- internet
- jquery
- knowledge
- management
- mobile
- officesuite
- online
- open source
- program
- programming
- proprietary
- PROSolvIT
- Quote
- RDO-POS
- reendoosystem
- RHomeS
- robotic
- security
- server
- SiReDisH
- SiReDU
- SiReGi
- software
- sound
- spreadsheet
- system
- technology
- tips
- tool
- tricks
- tutorial
- ui
- userexperience
- userinterface
- ux
- video
- virtual reality
- vr
- web
- web design
- website
- wordpress
LEAVE A REPLY
Your email address will not be published. Required fields are marked *