Kaj je prva normalna oblika?

Preden razumete prvo normalno obliko, morate vedeti, kaj je normalizacija in zakaj se to počne? Splošna normalizacija je tehnika organiziranja podatkov v zbirko podatkov, da se zmanjša anomalija pri vstavljanju, brisanju in posodabljanju ter da se odstrani odvečnost podatkov. Ta postopek razdeli večje tabele na manjše in jih medsebojno poveže prek odnosov primarnega in tujih ključev. Podvojeni in nenormalni podatki ne samo porabijo več pomnilnika, ampak otežujejo upravljanje tabele med vstavljanjem, brisanjem in posodabljanjem tabel s povečanjem števila podatkov. Zato je zelo pomembno normalizirati tabele pred načrtovanjem baze podatkov katere koli aplikacije.

Prva normalna oblika, zapisana kot 1NF, določa temeljna pravila normalizacije podatkov in je prva oblika, ki se uporablja pri normalizaciji podatkov tabel. Določa določena osnovna načela normalizacije podatkov, ki jih mora izpolnjevati vsaka tabela. Nekatera načela so navedena spodaj:

  • Vsak stolpec mora imeti posamezne atomske (vrednosti, ki jih ni mogoče razdeliti naprej).
  • Vsak stolpec v tabeli nima sestavljenih vrednosti in ponavljajočih se vrednosti, saj otežuje iskanje vrednosti za stolpec z več vrednostmi. Torej mora imeti vsak stolpec eno samo edinstveno vrednost.
  • Vrednosti, shranjene v stolpcu, morajo biti iste domene in biti v 1NF.
  • Vsi stolpci v tabeli bi morali imeti edinstvena imena.
  • Tabela mora imeti edinstven primarni ključ, ki se uporablja za identifikacijo vsakega zapisa drugače.

Kako deluje prvi običajni obrazec?

Po glavnih načelih omenjenega 1NF je dr.

  • Za stolpec, ki ga je mogoče nadalje razdeliti, ne bi smele biti sestavljene vrednosti. Če je stolpec v tabeli z vrednostjo, ki jo je mogoče nadalje razdeliti, je treba za ta atribut ustvariti ločeno tabelo z različnimi stolpci v tej tabeli z edinstven primarni ključ. Na primer, v tabeli Zaposleni, za zaposleni_naslov, ki ga je mogoče razdeliti naprej, mora obstajati ločena tabela Employee_address, ki ima Employee_id kot svoj primarni ključ, hišna št., City in Pincode pa kot različna stolpca.

Zaposleni v tabeli (pred 1NF)

Emp_idEmp_nameEmp_ageE-naslov
101Raghu25Kolonija Xyz, agra, 258996
102Rakeš28Ravna 304, cesta xyz, lucknow, 568975
103Rahul45Hiša št .123, v bližini bolnišnice, varanasi, 245687

Ker ima Emp_address toliko podatkov za naslov za enega zaposlenega, da je v 1NF, lahko zgornjo tabelo razdelimo na dve spodaj podani tabeli:

Tabela1: Delovni podatki o zaposlenem (po 1NF)

Emp_idEmp_nameEmp_age
101Raghu25
102Rakeš28
103Rahul45

Tabela2: Naslov zaposlenega (po 1NF)

Emp_idEmp_housenoEmp_cityEmp_pincode
101Hiša št. 564, kolonija Xyzagra258996
102Ravna 304, xyz cestahvala568975
103Hiša št .123, v bližini bolnišnicevaranasi245687
    Za stolpec, ki je v 1NF, je treba določiti atomske vrednosti. Na primer, v tabeli Zaposlenih je lahko več emp_projektov, ki jih je do zdaj obravnaval. Da bi imeli zapis vseh projektov tega zaposlenega, bi moral biti za vsak projekt zaposlenega ločen zapis, ki ima edinstveno vrednost, namesto da bi bili projekti ločeni z ', '

Tabela: Emp_projects (pred 1NF)

Emp_idEmp_years_of_ex perienceEmp_deptEmp_projects
1013ITabc, jkl
1022ITbcd
1035RačuniAbc, cfg, xyz, hjk

Tabela: Emp_projects (po 1NF)

Emp_idEmp_years_of_ex perienceEmp_deptEmp_projects
1013ITabc
1013ITjkl
1022ITbcd
1035RačuniAbc
1035Računicfg
1035Računixyz
1035Računihjk

Tabela: Emp_projects, ki imajo v zgornjem primeru večkrat ponavljajoče se vrednosti, lahko razčlenite naprej na dve tabeli, da zmanjšate ponovitev:
V tabeli ne bi smeli obstajati ponavljajočih se vrednosti, če ponavljate vrednosti porabijo veliko dodatnega pomnilnika, poleg tega pa je iskanje in posodabljanje počasno ter vzdrževanje baze podatkov oteženo. Na primer, v zgornji tabeli Employee_Projects je veliko nepotrebnih vrednosti, ki se ponavljajo Emp_id, Emp_years_of_experience in Emp_dept, zato je treba za to ustvariti novo tabelo, da se zmanjša ponovitev vrednosti.

Tabela1:

Emp_idEmp_years_of_experienc eEmp_dept
1013IT
1022IT
1035Računi

Tabela2:

Emp_idEmp_projects
101abc
101jkl
102bcd
103Abc
103cfg
103xyz
103hjk

Prednosti prve normalne oblike

Spodaj so navedene nekatere prednosti prve normalne oblike (1NF):

  • Ena od glavnih prednosti 1NF je ta, da odstranjuje nepotrebne vrednosti, ki se ponavljajo, tako da ustvari ločeno tabelo in zato med vstavljanjem, brisanjem in posodabljanjem vrednosti v bazo podatkov ne ustvari težav.
  • Delo s tabelami, v katerih so stolpci z več vrednostmi ločeni z ', ' je zelo težko med iskanjem določene vrednosti v bazi podatkov tako, da delite vse vrednosti stolpca in jih ponovno pretvorite v določen format, zapravite veliko časa in pomnilnika. v. 1NF omogoča enostavno ustvarjanje različnih vrstic za različne vrednosti.
  • 1NF tvori osnovo in je najpomembnejše načelo, ki ga upoštevamo pri ustvarjanju baze podatkov, zato je najpomembnejša normalna oblika, da se tabele nadalje normalizirajo z 2NF in 3NF.
  • 1NF je pomemben, saj ustvarja funkcionalno odvisnost med dvema tabelama s primarnim in tujim ključem, ki ima ključno vlogo pri delu s tabelami baze podatkov.
  • 1NF uporabnikom omogoča učinkovito uporabo poizvedb v bazi, saj odpravlja dvoumnost z odstranjevanjem ničelnih in več vrednosti stolpca, kar v prihodnosti povzroča večje težave med posodabljanjem in ekstrahiranjem baze podatkov.

Zaključek

Med delom z bazami podatkov in ustvarjanjem tabel za katero koli aplikacijo v zagonu je zelo pomembno, da se vse tabele normalizirajo, saj pomaga odpraviti nepravilnosti pri vstavljanju, brisanju in posodabljanju. Normalizacija odstrani tudi prihodnje stroške in čas. Manj ničelnih vrednosti in manj odvečnih podatkov naredi bazo bolj kompaktno. S pomočjo normalizacije se ustvari več tabel, ki pomagajo pri enostavnem in učinkovitem vzdrževanju podatkov. Z normalizacijo je očitno boljša uspešnost iskanja in razvrščanja s pomočjo indeksov in tipk in 1NF ima pri tem ključno vlogo.

Priporočeni članki

To je vodnik za prvo normalno obliko. Tukaj razpravljamo o definiciji, delu in prednostih prve normalne oblike skupaj z njenimi primeri. Če želite izvedeti več, si oglejte tudi naslednje članke -

  • Kaj je MySQL?
  • Kaj je shema MySQL?
  • Operatorji MySQL
  • MySQL Server