Dependency Fungsional pinuh dina databés normalisasi

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:

Bentuk munggaran Normal Non-minuhan
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:

Mimiti minuhan Bentuk Normal
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.

Departemén pagawe
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:

pagawé
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:

departemén
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:

Mimiti minuhan Bentuk Normal
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).