logo

Harmadik normál forma (3NF)

  • Egy reláció akkor lesz 3NF-ben, ha 2NF-ben van, és nem tartalmaz tranzitív részleges függőséget.
  • A 3NF az adatkettőzés csökkentésére szolgál. Az adatok integritásának elérésére is használják.
  • Ha nincs tranzitív függőség a nem prím attribútumokhoz, akkor a relációnak harmadik normál formában kell lennie.

Egy reláció harmadik normális alakban van, ha az alábbi feltételek közül legalább egy teljesül minden X → Y nem triviális függvényfüggőségre.

  1. X egy szuper kulcs.
  2. Y egy elsődleges attribútum, azaz Y minden eleme valamilyen jelölt kulcs része.
  3. Példa:

    új vonal python

    EMPLOYEE_DETAIL táblázat:

    EMP_ID EMP_NAME EMP_ZIP EMP_STATE EMP_CITY
    222 Harry 201010 FEL Noida
    333 Stephan 02228 MINKET Boston
    444 És 60007 MINKET Chicago
    555 Katharine 06389 Egyesült Királyság Norwich
    666 János 462007 MP Bhopal

    Szuper kulcs a fenti táblázatban:

     {EMP_ID}, {EMP_ID, EMP_NAME}, {EMP_ID, EMP_NAME, EMP_ZIP}....so on 

    Jelölt kulcs: {EMP_ID}

    Nem elsődleges attribútumok: Az adott táblázatban az EMP_ID kivételével minden attribútum nem elsődleges.

    Itt az EMP_STATE és EMP_CITY az EMP_ZIP-től, az EMP_ZIP pedig az EMP_ID-től függ. A nem elsődleges attribútumok (EMP_STATE, EMP_CITY) tranzitívan függenek a szuperkulcstól (EMP_ID). Megsérti a harmadik normálforma szabályát.

    általános védelmi hiba

    Ezért át kell helyeznünk az EMP_CITY és EMP_STATE értékeket az új táblába, ahol az EMP_ZIP elsődleges kulcs.

    ALKALMAZOTT táblázat:

    EMP_ID EMP_NAME EMP_ZIP
    222 Harry 201010
    333 Stephan 02228
    444 És 60007
    555 Katharine 06389
    666 János 462007

    EMPLOYEE_ZIP táblázat:

    EMP_ZIP EMP_STATE EMP_CITY
    201010 FEL Noida
    02228 MINKET Boston
    60007 MINKET Chicago
    06389 Egyesült Királyság Norwich
    462007 MP Bhopal