A kagumantungan hanca pinuh nyaeta kaayaan normalisasi database nu equates kana standar normalisasi of Kadua Normal Bentuk (2NF) . Dina ringkes, ieu ngandung harti yén éta meets sarat tina Mimiti Normal Bentuk (1NF), sarta kabéh atribut non-konci anu pinuh functionally gumantung tombol primér.
Ieu teu jadi pajeulit sakumaha eta bisa disada. Hayu urang nempo ieu leuwih jéntré.
Kasimpulan Bentuk Normal Kahiji
Sateuacan database a tiasa pinuh functionally gumantung, éta mimitina kudu sasuai jeung Bentuk Normal munggaran .
Sadaya ieu ngandung harti yén unggal atribut kedah tahan, nilai atom tunggal.
Contona, tabel di handap henteu sasuai jeung 1NF, sabab Tina pagawe ieu numbu ka dua lokasi, duanana dina sél tunggal:
pagawe | lokasi |
---|---|
John | Los Angeles |
Tina | Los Angeles, Chicago |
Sahingga desain ieu négatip bisa dampak apdet data atawa éntri. Pikeun mastikeun 1NF minuhan, nyusun ulang tabel supados sadaya atribut (atawa sél kolom) tahan hiji nilai tunggal:
pagawe | lokasi |
---|---|
John | Los Angeles |
Tina | Los Angeles |
Tina | Chicago |
Tapi 1NF masih tacan cukup pikeun nyegah masalah sareng data.
Kumaha 2NF Karya pikeun mastikeun Full Dependency
Janten pinuh gumantung, sadaya atribut konci non-calon kudu gumantung kana konci primér. (Inget, hiji calon konci atribut téh konci sagala (contona, hiji konci primér atawa asing) dipaké pikeun ngaidentipikasi hiji catetan database uniquely.
désainer database nganggo notasi pikeun nerangkeun hubungan gumantung antara atribut:
Mun atribut A nangtukeun nilai B, urang nulis A kieu -> B - hartina B nyaeta functionally gumantung A. Dina hubungan ieu, A nangtukeun nilai B, bari B gumantung kana A.
Contona, dina tabel Departemén pagawe handap, EmployeeID na DeptID téh duanana kenop calon: EmployeeID mangrupakeun konci primér tabel urang bari DeptID mangrupakeun konci asing.
Sagala atribut sejenna - dina hal ieu, EmployeeName na DeptName - kudu gumantung kana konci primér pikeun ménta nilaina.
EmployeeID | EmployeeName | DeptID | DeptName |
---|---|---|---|
Emp1 | John | Dept001 | ngabiayaan |
Emp2 | Tina | Dept003 | jualan |
Emp3 | Carlos | Dept001 | ngabiayaan |
Dina hal ieu, tabél teu pinuh gumantung sabab, sedengkeun EmployeeName gumantung kana EmployeeID konci primér, anu DeptName gumantung gantina dina DeptID. Ieu disebut kagumantungan parsial.
Nyieun tabel ieu akur jeung 2NF, urang kudu misahkeun data kana dua tabel:
EmployeeID | EmployeeName | DeptID |
---|---|---|
Emp1 | John | Dept001 |
Emp2 | Tina | Dept003 |
Emp3 | Carlos | Dept001 |
Urang ngalaan atribut DeptName ti méja pagawé sarta nyieun hiji Departemén méja anyar:
DeptID | DeptName |
---|---|
Dept001 | ngabiayaan |
Dept002 | Personalia |
Dept003 | jualan |
Kiwari éta hubungan antara tabel nu pinuh gumantung, atanapi di 2NF.
Naha Full Dependency Dupi penting
kagumantungan pinuh antara database atribut mantuan mastikeun integritas data sarta ulah aya anomali data.
Contona, anggap tabel dina bagian di luhur yén tataman ukur keur 1NF. Di dieu éta, deui:
pagawe | lokasi |
---|---|
John | Los Angeles |
Tina | Los Angeles |
Tina | Chicago |
Tina boga dua rékaman. Mun urang ngomean salah tanpa merealisasikan yén aya dua, hasilna bakal jadi data inconsistent.
Atawa, kumaha lamun urang hoyong tambahkeun hiji pagawe kana méja ieu, tapi urang teu acan terang lokasi nu? Urang bisa jadi disallowed mun malah nambahan hiji pagawe anyar lamun lokasi atribut teu ngidinan nilai hypothesis.
kagumantungan pinuh teu sakabeh gambar, sanajan, lamun datang ka normalisasi. Anjeun kudu mastikeun yén databés anjeun aya dina Katilu Normal Bentuk (3NF).