- 2NF:ssä relaatioarvon on oltava 1NF:ssä.
- Toisessa normaalimuodossa kaikki ei-avainattribuutit ovat täysin toimivia ensisijaisesta avaimesta riippuen
Esimerkki: Oletetaan, että koulu voi tallentaa tietoja opettajista ja heidän opettamistaan aineista. Koulussa opettaja voi opettaa useampaa kuin yhtä ainetta.
OPETTAJAN pöytä
OPETTAJAN_ID | AIHE | TEACHER_AGE |
---|---|---|
25 | Kemia | 30 |
25 | Biologia | 30 |
47 | Englanti | 35 |
83 | Matematiikka | 38 |
83 | Tietokone | 38 |
Annetussa taulukossa ei-prime-attribuutti TEACHER_AGE on riippuvainen TEACHER_ID:stä, joka on ehdokasavaimen oikea osajoukko. Siksi se rikkoo 2NF:n sääntöä.
Muuntaaksesi annetun taulukon 2NF:ksi, jaamme sen kahdeksi taulukoksi:
TEACHER_DETAIL taulukko:
OPETTAJAN_ID | TEACHER_AGE |
---|---|
25 | 30 |
47 | 35 |
83 | 38 |
TEACHER_SUBJECT taulukko:
OPETTAJAN_ID | AIHE |
---|---|
25 | Kemia |
25 | Biologia |
47 | Englanti |
83 | Matematiikka |
83 | Tietokone |