Den anden normalform ( engelsk Second normal form ; forkortet 2NF ) er en af de mulige normalformer for en relation i en relationsdatabase .
En relationsvariabel er i anden normalform, hvis og kun hvis den er i første normalform, og hver ikke-nøgle-attribut er irreducerbart afhængig af (hver) dens kandidatnøgle [1] .
Irreducibility betyder, at den potentielle nøgle ikke indeholder en mindre delmængde af attributter, hvorfra denne funktionelle afhængighed også kan udledes [1] . For en irreducerbar funktionel afhængighed bruges ofte det tilsvarende begreb "fuld funktionel afhængighed" [1] .
Hvis kandidatnøglen er enkel, dvs. den består af en enkelt attribut, så er enhver funktionel afhængighed af den irreducerbar (komplet). Hvis kandidatnøglen er en sammensat nøgle, så må der ifølge definitionen af den anden normalform ikke være nogen ikke-nøgleattributter i relationen, der afhænger af en del af den sammensatte kandidatnøgle.
Et eksempel på konvertering af en relation til anden normalform
Lad attributparret { Company Branch , Position } danne den primære nøgle i følgende relation:
Firma filial | Jobtitel | Løn | Tilgængeligheden af en computer |
---|---|---|---|
Afdeling i Tomsk | Renere | 20.000 | Ikke |
Afdeling i Moskva | Programmer | 40.000 | Der er |
Afdeling i Tomsk | Programmer | 25.000 | Der er |
Lad os sige, at lønnen afhænger af filial og stilling, og tilgængeligheden af en computer afhænger kun af stillingen.
Der er en funktionel afhængighed Position → At have en computer , hvor venstre side (determinant) kun er en del af den primære nøgle, hvilket overtræder betingelsen for den anden normalform.
For at reducere til 2NF bør den oprindelige relation opdeles i to relationer:
Firma filial | Jobtitel | Løn |
---|---|---|
Afdeling i Tomsk | Renere | 20.000 |
Afdeling i Tomsk | Programmer | 25.000 |
Afdeling i Moskva | Programmer | 40.000 |
Jobtitel | Tilgængeligheden af en computer |
---|---|
Renere | Ikke |
Programmer | Der er |
På russisk
Overførbar
På engelsk
normale former | |
---|---|