1NF lwn 2NF lwn 3NF
Normalization ialah proses yang dijalankan untuk meminimumkan redundansi yang terdapat dalam data dalam pangkalan data hubungan. Proses ini terutamanya akan membahagikan jadual besar kepada jadual yang lebih kecil dengan lebihan yang lebih sedikit. Jadual yang lebih kecil ini akan dikaitkan antara satu sama lain melalui perhubungan yang jelas. Dalam pangkalan data yang dinormalisasi dengan baik, sebarang perubahan atau pengubahsuaian dalam data akan memerlukan pengubahsuaian hanya satu jadual. Bentuk normal pertama (1NF), bentuk normal kedua (2NF) dan Bentuk Normal Ketiga (3NF) telah diperkenalkan oleh Edgar F. Codd, yang juga pencipta model hubungan dan konsep normalisasi.
Apakah itu 1NF?
1NF ialah bentuk biasa Pertama, yang menyediakan set minimum keperluan untuk menormalkan pangkalan data hubungan. Jadual yang mematuhi 1NF memastikan bahawa ia sebenarnya mewakili hubungan (iaitu ia tidak mengandungi sebarang rekod yang berulang), tetapi tiada definisi yang diterima secara universal untuk 1NF. Satu sifat penting ialah jadual yang mematuhi 1NF tidak boleh mengandungi sebarang atribut yang bernilai hubungan (iaitu semua atribut harus mempunyai nilai atom).
Apakah itu 2NF?
2NF ialah bentuk biasa Kedua yang digunakan dalam pangkalan data hubungan. Untuk jadual untuk mematuhi 2NF, ia harus dipatuhi dengan 1NF dan sebarang atribut yang bukan sebahagian daripada mana-mana kunci calon (iaitu atribut bukan utama) harus bergantung sepenuhnya pada mana-mana kunci calon dalam jadual.
Apakah itu 3NF?
3NF ialah bentuk normal Ketiga yang digunakan dalam penormalan pangkalan data hubungan. Menurut definisi Codd, jadual dikatakan berada dalam 3NF, jika dan hanya jika, jadual itu dalam bentuk normal kedua (2NF), dan setiap atribut dalam jadual yang bukan milik kunci calon, harus bergantung secara langsung pada setiap kunci calon jadual itu. Pada tahun 1982 Carlo Zaniolo menghasilkan definisi yang dinyatakan secara berbeza untuk 3NF. Jadual yang mematuhi 3NF biasanya tidak mengandungi anomali yang berlaku apabila memasukkan, memadam atau mengemas kini rekod dalam jadual.
Apakah perbezaan antara 1NF dan 2NF dan 3NF?
1NF, 2NF dan 3NF ialah bentuk biasa yang digunakan dalam pangkalan data hubungan untuk meminimumkan lebihan dalam jadual. 3NF dianggap sebagai bentuk normal yang lebih kuat daripada 2NF, dan ia dianggap sebagai bentuk normal yang lebih kuat daripada 1NF. Oleh itu secara amnya, mendapatkan jadual yang mematuhi borang 3NF memerlukan penguraian jadual yang berada dalam 2NF. Begitu juga, mendapatkan jadual yang mematuhi 2NF memerlukan penguraian jadual yang berada dalam 1NF. Walau bagaimanapun, jika jadual yang mematuhi 1NF mengandungi kunci calon yang hanya terdiri daripada satu atribut (iaitu kunci calon bukan komposit), jadual sedemikian akan mematuhi 2NF secara automatik. Penguraian jadual akan menghasilkan operasi gabungan tambahan (atau produk Cartesian) apabila melaksanakan pertanyaan. Ini akan meningkatkan masa pengiraan. Sebaliknya, jadual yang mematuhi bentuk normal yang lebih kuat akan mempunyai lebihan redundansi yang lebih sedikit daripada jadual yang hanya mematuhi bentuk normal yang lebih lemah.