Professional Documents
Culture Documents
Bancos de Dados
Normalização
PROJETO LÓGICO
NORMALIZAÇÃO
(decomposição de tabelas)
A teoria da normalização objetiva a simplificação das estruturas de dados visando evitar as chamadas
anomalias de atualização.
Inserção
Deleção
Alteração
Ø Formas normais
Dependência Funcional:
Dados dois atributos X e Y de um mesmo conjunto de entidades, diz-se que
Y é dependente funcional de X, ou que X determina Y,
se para cada valor de X corresponde exatamente um valor de Y.
XY
EMPREGADO
Cod_Emp Nome Cargo Salario
001 João da Silva Analista Júnior 1.000,00
003 Maria João Programador Pleno 1.200,00
006 Joice Casa Analista Júnior 1.000,00
009 Caio Carvalho Programador Pleno 1.200,00
002 Carlos Villa Analista Sênior 2.200,00
Dependências funcionais:
Num_NF Data
Cod_Produto Descricao,Preco
Num_NF,Cod_Produto Quantidade
Uma relação está em primeira forma normal se cada atributo é um atributo simples, ou seja, se não
existem atributos compostos nem atributos multivalorados.
LIVRO
título autor editora
Introd. Sistemas de BD Date Campus
Sistemas de Bancos de Dados {Korth, Silberschatz} McGraw-Hill
Conceptual DB Design {Batini, Ceri, Navathe} Benjamin/Cummings
LIVRO
título autor editora
Introd. Sistemas de BD Date Campus
Sistemas de Bancos de Dados Korth McGraw-Hill
Sistemas de Bancos de Dados Silberschatz McGraw-Hill
Conceptual DB Design Batini Benjamin/Cummings
Conceptual DB Design Ceri Benjamin/Cummings
Conceptual DB Design Navathe Benjamin/Cummings
A Linguagem Delphi Tshu Krutz Campus
Exercício:
EMPREGADO (Cod_Emp, Cod_Proj, Nome, Cargo, Salario, Horas_Alocadas,
Data_Conclusao)
Cod_Emp, Cod_Proj Horas_Alocadas
Cod_Emp Nome, Cod_Cargo, Cargo
Cod_Proj Data_Conclusão
Cargo Salario
EMPREGADO (Cod_Emp, Nome, Cargo, Salario)
LOTACAO(Cod_Emp, Cod_Proj, Horas_Alocadas)
PROJETO(Cod_Proj, Data_Conclusao)
Uma relação está em terceira forma normal se está em segunda forma normal e não existe
dependência funcional entre os atributos não-chave. Isto é, os atributos não-chave são independentes
entre si.
• Observar que a 3NF não se preocupa com dependências de atributos que faze parte de chaves
(atributos primos). Assim, admite-se a DF X A, onde A é membro de alguma chave, podendo
X ser ou não chave. (vide BCNF). Neste caso nem todas as redundâncias são eliminadas. - vide
exemplo a seguir
• A 3NF não trata adequadamente relações onde ocorrem chaves candidatas que ao mesmo tempo
são múltiplas (mais de uma), compostas (formadas por mais de um atributo) e sobrepostas (com
pelo menos um atributo em comum).
Uma relação está na forma normal de Boyce-Codd se todo determinante (lado esquerdo de suas
dependências funcionais) for uma chave super-chave (identificador, não necessariamente minimal).
exemplo:
PROGRAMACAO ( filme, local, cidade )
local cidade ( um local pode ter mais de uma sala de projeção)
filme, cidade local (um filme nao passa ao mesmo tempo em mais de um
local na mesma cidade)
Aplicando as regras de decomposição teríamos tabelas cuja junção das tuplas admite a violação da
dependência filme, cidade local:
PROGRAMACAO ( local, filme ) {(Guion,Central do Brasil),(Baltimore,Central do Brasil)}
LOCALIZACAO ( local, cidade ) {(Guion,Porto Alegre),(Baltimore,Porto Alegre)}
Junção: {(Guion,Porto Alegre, Central do Brasil),(Baltimore,Porto Alegre, Central do Brasil)}
OBS: Toda a relação com apenas dois atributos sempre está em BCNF. Porquê ?
Uma relação está em quarta forma normal se está na terceira forma normal e as dependências
multivaloradas dependem da chave.
DISCIPLINA
Disciplina Professor Bibliografia
Org. Banco de Dados {Karin, Eduardo} {Date, Siberschatz}
Projeto Arquivos Eduardo {Date, Santos, Setzer}
Dependências funcionais: -
Colocando em 3NF e BCNF:
DISCIPLINA
Disciplina Professor Bibliografia
Org. Banco de Dados Karin Date
Org. Banco de Dados Karin Silberschatz
Org. Banco de Dados Eduardo Date
Org. Banco de Dados Eduardo Silberschatz
Projeto Arquivos Eduardo Date
Projeto Arquivos Eduardo Santos
Projeto Arquivos Eduardo Setzer
obs: outras formas poderiam ser utilizadas para representação, mas todas ainda com anomalias
Resolução intuitiva:
DISCIPLINA_PROFESSOR
Disciplina Professor
Org. Banco de Dados Karin
Org. Banco de Dados Eduardo
Projeto Arquivos Eduardo
DISCIPLINA_BIBLIOGRAFIA
Disciplina Bibliografia
Org. Banco de Dados Date
Org. Banco de Dados Silberschatz
Projeto Arquivos Date
Projeto Arquivos Santos
Projeto Arquivos Setzer
Dependência Multivalorada: Y Z
X2
De forma simplificada, pode-se dizer que uma relação está em quinta forma normal quando seu
conteúdo não pode ser reconstituído a partir de várias outras tabelas.
exemplo:
Vendedor Fabricante
Smith Ford
Smith GM
Jones Ford
Vendedor Veiculo
Smith Automóvel
Smith Caminhão
Jones Automóvel
Fabricante Veiculo
Ford Automóvel
Ford Caminhão
GM Automóvel
GM Caminhão
• A 5NF trata de fatos multivalorados dependentes, enquanto que a 4NF trata de fatos
independentes.
• A 4NF decompõe uma relação aos pares (substitui uma relaçào por duas de suas projeções),
enquanto que a 5NF é utilizada quando uma decomposição aos pares não é possível, como no
caso acima (no caso, a relação foi decomposta em três outras, sem perdas)
não normalizado
1NF
NORMALIZAÇÃO
2NF
3NF
outros
Ø A normalização de relações leva a um modelo correto do ponto de vista teórico, que pode não
ser o ideal do ponto de vista prático.
Ø Desnormalização: processo de unificação de tabelas normalizadas em função de considerações
de eficiência (ex: tempo de resposta e espaço de armazenamento)