Hvad er anden normal form?

  • I et relationsdatabasestyringssystem er datakonsistens og afhængighed af største betydning. Generelt bruges de normale formularer for at undgå redundans af data. Redundans i dataene fører til anomalier såsom opdatering, indsættelse og sletning. I opdateringsanomali, hvis en tabel har overflødige data, er de under opdatering af posterne ikke opdateret korrekt, hvilket resulterer i, at dataene er inkonsekvente.
  • I tilfælde af indsæt anomali, kan vi forstå det bedre ved at tage et eksempel på en kolonne, der ikke kan opdateres med nulværdier, hvis tabellen ikke tillader nulværdier. Slet-anomalien kommer ind i billedet, hvis vi har brug for at slette en bestemt post, og hvis denne post findes i andre rækker i tabellen, slettes den specifikke post også fra de andre rækker.
  • For at overvinde opdateringen, indsætte og slette anomalier, skal dataene normaliseres. Normalisering eliminerer overflødige data og sikrer også datafhængigheden. Normalisering hjælper også med at lagre dataene logisk og reducere pladsen til lagring af databasen.
  • Forskellige normale former, der ofte bruges i relationel databasestyringssystem er First Normal Form, Second Normal Form, Third Normal Form, Boyce-Codd Normal Form (BCNF) osv. For at opnå den Second Normal form skal den First Normal Form opnås først, hvilket er et af kriterierne for at fremstille tabellen eller dataene til at være i anden normal form. Reglen for First Normal Form (1NF) er, at en attribut i en kolonne ikke kan indeholde flere værdier, snarere skal den indeholde atomværdier.

Hvordan fungerer anden normal form?

Inden vi går dybt ind i begrebet normalisering, lad os fokusere på et par grundlæggende elementer involveret i databasetabeller og relationer. En nøgle i RDBMS bruges til at identificere poster unikt i en tabel, og en nøgle kan være en enkelt kolonne eller flere kolonner. En primær nøgle er en enkelt kolonne, der bruges til at identificere posterne unikt. En sammensat primærnøgle består af flere kolonner, der også bruges til at identificere unikke poster. I den anden normale formular er vi nødt til at opnå en primær nøgle med én søjle. En fremmed nøgle i en tabel bruges til at identificere posterne i en anden tabel unikt. I anden normal form skal hver ikke-nøgleattribut i relationen afhænge af den primære nøgle funktionelt.

Nedenfor er et par trin for at sikre, at dataene findes i anden normal form:

  1. Første normal form skal opnås.
  2. Fjernelse af delmængder af data, der gælder for flere rækker i en tabel og placering af dem i forskellige tabeller.
  3. Brug af udenlandske nøgler til at sikre forhold mellem de oprettede tabeller.

eksempler

For at forstå de normale former bedre, lad os tage eksemplet i nedenstående tabel og derefter trinene for at opnå den anden normale form.

Lad os tage eksemplet på nedenstående tabel 'lærer_detaljer'.

IdNavnemner
1289Ramesh SawantMatematik, videnskab
5678Shruti Shahengelsk
1267Nikhil DasHistorie, samfundsfag
3409Pooja SharmaØkonomi

Ovenstående tabel indeholder de specifikke emner undervist af hver lærer. Her indeholder kolonnen 'Emner' ikke atomværdier, og for Id 1289 og 1267 er der mere end et emne til stede i kolonnen 'Emner'. Da vi kan se, at kolonnen 'Emner' ikke har atomværdier, skal vi først gøre tabellen kompatibel med First Normal Form ved at følge nedenstående.

IdNavnemner
1289Ramesh SawantMath
1289Ramesh SawantVidenskab
5678Shruti Shahengelsk
1267Nikhil DasHistorie
1267Nikhil DasSociale Studier
3409Pooja SharmaØkonomi

Nu er ovenstående tabel i First Normal Form, da alle attributterne har atomværdi.

Her er de sammensatte primære taster 'Id ' og 'Navn'. Kolonnen 'Emner' er den ikke-primære attribut. Også her afhænger kolonnen 'Emner' kun af kolonnen ' Navn ', som er en del af den sammensatte primære nøgle. Så tabellen opfylder ikke betingelsen for den anden normal form.

For at gøre tabellen kompatibel med anden normal form, er vi nødt til at opdele ovenstående tabel i de to tabeller som vist nedenfor.

Tabel lærerinfo som vist nedenfor

IdNavn
1289Ramesh Sawant
5678Shruti Shah
1267Nikhil Das
3409Pooja Sharma

Tabel subject_details som vist nedenfor:

Idemner
1289Math
1289Videnskab
5678engelsk
1267Historie
1267Sociale Studier
3409Økonomi

Vi har fjernet den indledende funktionelle afhængighed fra tabellen. Så i tabellen subject_details er kolonnen 'Subjects' fuldstændigt afhængig af den primære nøgle i tabellen, dvs. 'Id'.

Fordele ved anden normal form

Nedenfor er et par af fordelene ved at bruge den anden normale form.

  1. Redundante data reduceres mere effektivt.
  2. Data er konsistente i databasen.
  3. Det forbedrer fleksibiliteten i design af en database.
  4. Det forbedrer også den overordnede organisering af data i databasen.
  5. Det forbedrer også databasens sikkerhed.

Konklusion

  • For en vellykket implementering af et databasestyringssystem, der opfylder kravene til data fra et Enterprise-system, er design af en database kritisk. Normalisering hjælper med at opnå design samt vedligeholdelse af et databasestyringssystem ved at sikre datakonsistens og afhængighed.
  • Selvom den anden normale form fjerner delmængderne af data, der gælder for flere rækker i en tabel og sikrer forholdet mellem tabeller ved hjælp af den fremmede nøgle, er behovet for fjernelse af den transitive funktionelle afhængighed af den ikke-primære attribut på en hvilken som helst supernøgle stadig fjernet giver anledning til brugen af ​​tredje normal form. Så brugen af ​​den anden normale form afhænger af det krav, virksomheden stiller, og det skal vælges omhyggeligt, mens databasestyringssystemet designes.

Anbefalede artikler

Dette har været en guide til anden normal form. Her har vi drøftet, hvad der er anden normal form? Hvordan fungerer den anden normale form? sammen med et passende eksempel. Du kan også gennemgå vores andre foreslåede artikler for at lære mere -

  1. Typer af sammenføjninger i SQL Server
  2. Hvad er SQL-injektion?
  3. Oracle PL / SQL Interview spørgsmål
  4. Karrierer i SQL
  5. Top 6 typer sammenføjninger i MySQL med eksempler