Innholdsfortegnelse:
Definisjon - Hva betyr Second Normal Form (2NF)?
Second normal form (2NF) er det andre trinnet i å normalisere en database. 2NF bygger på den første normale formen (1NF).
Normalisering er prosessen med å organisere data i en database slik at de oppfyller to grunnleggende krav:
- Det er ingen overflødighet av data (alle data lagres bare ett sted).
- Datavhengigheter er logiske (alle relaterte dataelementer lagres sammen).
En 1NF-tabell er i 2NF-form hvis og bare hvis alle dens ikke-primære attributter er funksjonelt avhengig av hele hver kandidatnøkkel.
Techopedia forklarer Second Normal Form (2NF)
Etter å ha oppfylt kravene til 1NF, krever 2NF at databasedesigneren gjør følgende:
- Del opp alle data som resulterer i mange-til-mange forhold og lagre dataene som separate tabeller. For eksempel, i en database som brukes av en skoles applikasjon, er to av tabellene STUDENT og SUBJECT. I det virkelige liv tar en student flere fag samtidig, mens et fag studeres av flere studenter. Dette er mange-til-mange forhold. 2NF uttaler at dette forholdet må deles inn i mer enn de to tabellene ovenfor (STUDENT og SUBJECT). En måte å dele dem på er ved å introdusere en tredje tabell, som inneholder kolonnene Student_ID, Subject_ID, Semester og Year. På denne måten er det ikke noe direkte forhold mellom STUDENT og SUBJECT fordi alle forhold opprettes indirekte gjennom den tredje tabellen.
- Opprett forhold mellom tabeller ved bruk av utenlandske nøkler. For eksempel inneholder en banks database to tabeller: CUSTOMER_MASTER (for lagring av kundedetaljer) og ACCOUNT_MASTER (for lagring av detaljer om bankkontoer, inkludert hvilken kunde som har hvilken konto). Det må være en måte å koble sammen de to tabellene for å vite hvem kunden er for hver konto. Måten å gjøre dette på er via en fremmed nøkkel, som er en kolonne i ACCOUNT_MASTER-tabellen som peker til en tilsvarende kolonne i CUSTOMER_MASTER-tabellen.
En tabell som det ikke er delvis funksjonsavhengighet av den primære nøkkelen, er kanskje eller ikke i 2NF. I tillegg til den primære nøkkelen, kan tabellen inneholde andre kandidatnøkler; Det er nødvendig å fastslå at ingen ikke-primære attributter har en nøkkelavhengighet av noen av disse kandidatnøklene.








