1fn 2fn 3fn
Normalização
Frederico D. Bortoloti freddb@ltc.ufes.br Qualidade de Esquemas
Relacionais: Normalização
• A normalização é a explicação formal para coisas que são óbvias ao se projetar um BD
– A intuição do projetista o leva a dividir um esquema de BD em várias tabelas, mas a normalização explica porque as coisas são assim
• As restrições impostas pela normalização geralmente são alcançadas de outra forma que não o procedimento de normalização
– Normalmente esquemas surgem “de cima para baixo”
Qualidade de Esquemas
Relacionais: Normalização
• Um bom projeto de um esquema de entidades, e sua conseqüente conversão para um esquema relacional, segundo as regras vistas, praticamente deixa o esquema relacional normalizado
• Assim, utiliza-se a normalização somente para validar um projeto relacional
• A normalização é necessária (embora não suficiente) a um bom projeto relacional
Qualidade de Esquemas
Relacionais: Normalização
• [Date, 95]
– “A idéia geral de normalização é que o projetista do banco de dados deveria almejar ter relações em forma normal ‘última’ (5FN).
Porém, esta recomendação não deve ser tomada como lei. Ocasionalmente podem existir boas razões para desafiar os princípios de normalização. A única exigência firme é que as relações estejam pelo menos na primeira forma normal.”
Qualidade de Esquemas
Relacionais: Normalização
• Principais formas normais existentes
– 1FN
– 2FN
– 3FN
– Forma normal de Boyce/Codd (FNBC) ou
Nova 3FN
– 4FN
– 5FN
• Estudaremos neste curso apenas até a
3FN
• Segue um exemplo de motivação
Qualidade de Esquemas
Relacionais: Normalização
HABILIDADES-ESPORTIVAS
Identidade
Nome
8795835
Édson Arantes
8795835
Édson Arantes
8795835
Édson Arantes
8795835
Édson Arantes
8795835
Édson Arantes
Endereço
Ponta da Praia
Ponta da Praia
Ponta da Praia
Ponta da Praia
Ponta da Praia
Habilidade
Futebol
Voleibol
Basquete
Atletismo
Tênis