- Na 2NF, o relacional deve estar na 1NF.
- Na segunda forma normal, todos os atributos não-chave são totalmente funcionais, dependendo da chave primária
Exemplo: Vamos supor que uma escola possa armazenar os dados dos professores e das disciplinas que eles ensinam. Em uma escola, um professor pode ministrar mais de uma matéria.
Mesa PROFESSOR
| TEACHER_ID | ASSUNTO | TEACHER_AGE |
|---|---|---|
| 25 | Química | 30 |
| 25 | Biologia | 30 |
| 47 | Inglês | 35 |
| 83 | Matemática | 38 |
| 83 | Computador | 38 |
Na tabela fornecida, o atributo não principal TEACHER_AGE depende de TEACHER_ID, que é um subconjunto adequado de uma chave candidata. É por isso que viola a regra da 2NF.
Para converter a tabela fornecida em 2NF, nós a decompomos em duas tabelas:
Tabela TEACHER_DETAIL:
| TEACHER_ID | TEACHER_AGE |
|---|---|
| 25 | 30 |
| 47 | 35 |
| 83 | 38 |
Tabela TEACHER_SUBJECT:
| TEACHER_ID | ASSUNTO |
|---|---|
| 25 | Química |
| 25 | Biologia |
| 47 | Inglês |
| 83 | Matemática |
| 83 | Computador |