Vad är den första normala formen?

Innan man förstår den första normala formen måste man ha kunskap om vad som är normalisering och varför görs det? Normalisering i allmänna termer är tekniken för att organisera data i databasen för att minska infogning, radering och uppdatering avvikelse och för att ta bort data redundans. Denna process delar upp de större tabellerna i mindre och kopplar dem med varandra genom relationer mellan primära och främmande nycklar. Duplicerade och onormaliserade data förbrukar inte bara extra minne utan gör det svårt att hantera tabellen medan införing, radering och uppdatering av tabeller när antalet data ökar. Därför är det mycket viktigt att normalisera tabellerna innan databasen för en applikation utformas.

Första normalformuläret som skrivs som 1NF anger de grundläggande reglerna för dataanormalisering och är det första formuläret som används när data från tabeller normaliseras. Den fastställer vissa grundläggande principer för dataanormalisering som måste uppfyllas av varje tabell. Några av principerna ges nedan:

  • Varje kolumn bör ha enstaka atomvärden (värden som inte kan delas vidare).
  • Varje kolumn i tabellen har inte sammansatta värden och upprepade värden eftersom det gör det svårt att söka i värdena för kolumnen med flera värden. Så varje kolumn måste ha ett unikt värde.
  • Värden lagrade i en kolumn bör ha samma domän för att vara i 1NF.
  • Alla kolumner som finns i tabellen ska ha unika namn.
  • En tabell måste ha en unik primärnyckel som används för att identifiera varje post på olika sätt.

Hur fungerar First Normal Form?

Enligt de viktigaste principerna för 1NF som nämns ovan,

  • Det bör inte finnas sammansatta värden för en kolumn som kan delas vidare. Om det finns en kolumn i en tabell som har ett värde som kan delas ytterligare, bör en separat tabell skapas för det attributet med olika kolumner i den tabellen med en unik primär nyckel. Till exempel, i en anställdtabell, för medarbetaradressen som kan delas vidare, bör det finnas en separat tabell över anställdadress med anställd_id som primär nyckel och husnr, stad och pincode som olika kolumner.

Tabellanställd (före 1NF)

anst_idEmp_nameEmp_ageEmp_address
101Raghu25Xyz koloni, agra, 258996
102Rakesh28Lägenhet 304, xyz road, lucknow, 568975
103Rahul45Hus nr. 123, nära sjukhus, varanasi, 245687

Eftersom Emp_address har så mycket data för adress, för en enda anställd, För att vara i 1NF, kan tabellen ovan delas upp i två nedan angivna tabeller:

Tabell1: Medarbetaruppgifter (Efter 1NF)

anst_idEmp_nameEmp_age
101Raghu25
102Rakesh28
103Rahul45

Tabell2: Anställdadress (Efter 1NF)

anst_idEmp_housenoEmp_cityEmp_pincode
101Hus Nej. 564, Xyz-koloninagra258.996
102Lägenhet 304, xyz väglucknow568.975
103Hus nr. 123, nära sjukhusetnasi245687
    Det bör finnas atomvärden för en kolumn som är odelbar i 1NF. Till exempel i en anställdtabell kan det finnas flera Emp_-projekt som han / hon har hanterat tills nu. För att ha en förteckning över alla anställdas projekt bör det finnas en separat post för varje projekt för en anställd som har unikt värde istället för att projekt separeras av ', '

Tabell: Emp_projects (före 1NF)

anst_idEmp_years_of_ex perienceEmp_deptEmp_projects
1013DENabc, jkl
1022DENbcd
1035kontonAbc, cfg, xyz, hjk

Tabell: Emp_projects (Efter 1NF)

anst_idEmp_years_of_ex perienceEmp_deptEmp_projects
1013DENABC
1013DENjkl
1022DENbcd
1035kontonABC
1035kontoncfg
1035kontonxyz
1035kontonHJK

Tabell: Emp_projekt som har flera upprepade värden i exemplet ovan kan delas upp ytterligare i två tabeller för att minska upprepningen:
Det bör inte finnas upprepade värden i tabellen. Upprepa värden förbrukar mycket extra minne och gör också att sökningen och uppdateringen blir långsam och underhållet av databasen blir svårt. Till exempel i tabellen ovan över medarbetarprojekt finns det många onödiga upprepande värden för Emp_id, Emp_years_of_experience och Emp_dept så en ny tabell måste skapas för detta för att minska upprepningen av värden.

Bord 1:

anst_idEmp_years_of_experienc eEmp_dept
1013DEN
1022DEN
1035konton

Tabell 2:

anst_idEmp_projects
101ABC
101jkl
102bcd
103ABC
103cfg
103xyz
103HJK

Fördelar med First Normal Form

Nedan ges några av fördelarna med First Normal Form (1NF):

  • En av de främsta fördelarna med 1NF är att den tar bort onödiga upprepade värden genom att skapa en separat tabell och därmed inte skapa några problem när du sätter in, tar bort och uppdaterar värdena i databasen.
  • Att arbeta med tabellerna med kolumner med flera värden separerade med ', ' är mycket svårt när du söker efter ett specifikt värde i databasen genom att dela upp alla värden i en kolumn och omvandla dem igen i specifikt format, slösa bort mycket tid och minne i det. 1NF gör det enkelt genom att skapa olika rader för olika värden.
  • 1NF utgör grunden och är den främsta principen som följs vid skapandet av en databas och därmed är den viktigaste Normala formen för att tabellerna ska kunna fortsätta att normaliseras med 2NF och 3NF.
  • 1NF är viktigt eftersom det skapar ett funktionellt beroende mellan de två tabellerna med hjälp av primärnyckeln och utländsk nyckel som spelar en avgörande roll när du arbetar med tabeller i en databas.
  • 1NF tillåter användare att använda databasfrågorna effektivt eftersom det tar bort tvetydighet genom att ta bort noll- och multipelvärdena i en kolumn som skapar stora problem i framtiden medan de uppdateras och extraherar databasen.

Slutsats

När du arbetar med databaserna och skapar tabeller för alla applikationer i början är det mycket viktigt att normalisera alla tabellerna eftersom det hjälper till att eliminera infogning, radering och uppdatering av avvikelser. Normalisering tar också bort framtida kostnader och tid. Färre nollvärden och mindre redundanta data gör databasen mer kompakt. Genom normalisering skapas fler tabeller som hjälper till att enkelt och effektivt underhålla data. Genom normalisering säkerställs uppenbarligen bättre prestanda för sökning och sortering genom index och nycklar och 1NF spelar en viktig roll i det.

Rekommenderade artiklar

Detta är en guide till First Normal Form. Här diskuterar vi definitionen, arbetar och fördelarna med den första normala formen tillsammans med dess exempel. Du kan också titta på följande artiklar för att lära dig mer -

  • Vad är MySQL?
  • Vad är MySQL-schema?
  • MySQL-operatörer
  • MySQL Server