Toinen normaalimuoto ( englanniksi Second normal form ; lyhennettynä 2NF ) on yksi relaatiotietokannan mahdollisista normaalimuodoista .
Relaatiomuuttuja on toisessa normaalimuodossa silloin ja vain, jos se on ensimmäisessä normaalimuodossa ja jokainen ei-avainattribuutti on redusoitumattomasti riippuvainen (jokaisesta) ehdokasavaimestaan [1] .
Redusoitumattomuus tarkoittaa, että potentiaalinen avain ei sisällä pienempää attribuuttien osajoukkoa, josta tämä toiminnallinen riippuvuus voidaan myös johtaa [1] . Pelkistymättömästä toiminnallisesta riippuvuudesta käytetään usein vastaavaa käsitettä "täysi toiminnallinen riippuvuus" [1] .
Jos ehdokasavain on yksinkertainen, eli se koostuu yhdestä attribuutista, niin mikä tahansa toiminnallinen riippuvuus siitä on redusoitumaton (täydellinen). Jos ehdokasavain on yhdistelmäavain, niin toisen normaalimuodon määritelmän mukaan suhteessa ei saa olla ei-avainattribuutteja, jotka riippuvat yhdistelmäehdokasavaimen osasta .
Esimerkki suhteen muuntamisesta toiseen normaalimuotoon
Olkoon attribuuttipari { Yrityksen sivuliike , sijainti } ensisijainen avain seuraavassa suhteessa:
Yrityksen sivuliike | Työnimike | Palkka | Tietokoneen saatavuus |
---|---|---|---|
Sivuliike Tomskissa | Puhdistaja | 20 000 | Ei |
Sivuliike Moskovassa | Ohjelmoija | 40 000 | On |
Sivuliike Tomskissa | Ohjelmoija | 25 000 | On |
Oletetaan, että palkka riippuu toimialasta ja asemasta, ja tietokoneen saatavuus riippuu vain asemasta.
On olemassa toiminnallinen riippuvuus Sijainti → Tietokone , jossa vasen puoli (determinantti) on vain osa ensisijaista avainta, mikä rikkoo toisen normaalimuodon ehtoa.
Alkuperäinen relaatio tulee jakaa kahdeksi suhteeksi, jotta se pienennetään arvoon 2NF:
Yrityksen sivuliike | Työnimike | Palkka |
---|---|---|
Sivuliike Tomskissa | Puhdistaja | 20 000 |
Sivuliike Tomskissa | Ohjelmoija | 25 000 |
Sivuliike Moskovassa | Ohjelmoija | 40 000 |
Työnimike | Tietokoneen saatavuus |
---|---|
Puhdistaja | Ei |
Ohjelmoija | On |
Venäjäksi
Siirrettävä
Englanniksi
normaaleja muotoja | |
---|---|