Verskil tussen 1NF en 2NF en 3NF

Verskil tussen 1NF en 2NF en 3NF
Verskil tussen 1NF en 2NF en 3NF

Video: Verskil tussen 1NF en 2NF en 3NF

Video: Verskil tussen 1NF en 2NF en 3NF
Video: Wat is het verschil tussen een SSD en HDD in opstartsnelheid? 2024, Julie
Anonim

1NF vs 2NF vs 3NF

Normalisering is 'n proses wat uitgevoer word om die oortolligheid wat in data in relasionele databasisse voorkom, te verminder. Hierdie proses sal hoofsaaklik groot tafels verdeel in kleiner tafels met minder oortolligheid. Hierdie kleiner tabelle sal deur goed gedefinieerde verwantskappe met mekaar verband hou. In 'n goed genormaliseerde databasis sal enige verandering of wysiging in data die wysiging van slegs 'n enkele tabel vereis. Eerste normale vorm (1NF), Tweede normale vorm (2NF) en die Derde Normale vorm (3NF) is bekendgestel deur Edgar F. Codd, wat ook die uitvinder van die relasionele model en die konsep van normalisering is.

Wat is 1NF?

1NF is die Eerste normale vorm, wat die minimum stel vereistes verskaf vir die normalisering van 'n relasionele databasis. 'n Tabel wat aan 1NF voldoen, verseker dat dit eintlik 'n verband verteenwoordig (d.w.s. dit bevat geen rekords wat herhaal nie), maar daar is geen universeel aanvaarde definisie vir 1NF nie. Een belangrike eienskap is dat 'n tabel wat aan 1NF voldoen, geen eienskappe kan bevat wat relasioneel gewaardeer is nie (m.a.w. al die eienskappe moet atoomwaardes hê).

Wat is 2NF?

2NF is die Tweede normale vorm wat in relasionele databasisse gebruik word. Vir 'n tabel om aan 2NF te voldoen, moet dit aan 1NF voldoen word en enige eienskap wat nie 'n deel van enige kandidaatsleutel is nie (d.w.s. nie-primêre eienskappe) moet ten volle afhang van enige van die kandidaatsleutels in die tabel.

Wat is 3NF?

3NF is die Derde normale vorm wat in relasionele databasisnormalisering gebruik word. Volgens die Codd se definisie word gesê dat 'n tabel in 3NF is, as en slegs as daardie tabel in die tweede normale vorm (2NF) is, en elke eienskap in die tabel wat nie aan 'n kandidaatsleutel behoort nie, moet direk afhang op elke kandidaatsleutel van daardie tabel. In 1982 het Carlo Zaniolo 'n anders uitgedrukte definisie vir 3NF gemaak. Tabelle wat aan die 3NF voldoen, bevat oor die algemeen nie onreëlmatighede wat voorkom wanneer rekords in die tabel ingevoeg, uitgevee of opgedateer word nie.

Wat is die verskil tussen 1NF en 2NF en 3NF?

1NF, 2NF en 3NF is normale vorms wat in relasionele databasisse gebruik word om oortolligheid in tabelle te minimaliseer. 3NF word beskou as 'n sterker normale vorm as die 2NF, en dit word beskou as 'n sterker normale vorm as 1NF. Om 'n tabel te verkry wat aan die 3NF-vorm voldoen, sal dus oor die algemeen ontbinding vereis van 'n tabel wat in die 2NF is. Net so sal die verkryging van 'n tabel wat aan die 2NF voldoen, die ontbinding van 'n tabel vereis wat in die 1NF is. As 'n tabel wat aan 1NF voldoen egter kandidaatsleutels bevat wat slegs uit 'n enkele kenmerk bestaan (d.w.s. nie-saamgestelde kandidaatsleutels), sal so 'n tabel outomaties aan 2NF voldoen. Ontbinding van tabelle sal bykomende koppelingsbewerkings (of Cartesiese produkte) tot gevolg hê wanneer navrae uitgevoer word. Dit sal die berekeningstyd verhoog. Aan die ander kant sal die tabelle wat aan sterker normale vorms voldoen, minder oortolle hê as tabelle wat net aan swakker normale vorms voldoen.

Aanbeveel: