Escolar Documentos
Profissional Documentos
Cultura Documentos
(4 - Normalização) PDF
(4 - Normalização) PDF
4 Normalizao
Grinaldo Lopes de Oliveira (grinaldo@gmail.com)
Curso Superior de Tecnologia em
Anlise e Desenvolvimento de Sistemas
* Material com crditos de colaborao dos professores Mrcio Soussa, Leandro Coelho e Pablo Florentino
Agenda
Aprendendo
Normalizao
Normalizao
Projeto Lgico - Normalizao
Processo muito importante para um projeto de
banco de dados.
Consiste em analisar o modelo e atravs de
regras formais, reestruturar possveis tabelas e
atributos, reduzindo assim redundncias e
permitindo o crescimento do BD com o mnimo
de efeito colateral.
Consiste em diminuir redundncia e anomalias
de insero, atualizao e deleo.
Projeto Lgico - Normalizao
Consiste em analisar relaes para satisfazer
requisitos cada vez mais rigorosos acarretando
agrupamentos cada vez melhores, mais estveis
e seguros.
Realiza-se uma srie de testes para certificar se
a relao est ou no em uma determinada
forma normal. O processo consiste em certificar
e decompor.
Fundamentado no conceito de Dependncia
Funcional.
Projeto Lgico Formas Normais
Dividem-se em 6 formas normais:
1 FN (1o Forma Normal)
2 FN (2o Forma Normal)
3 FN (3o Forma Normal) * Diz-se normalizado
4 FN (4o Forma Normal)
FNBC (Forma Normal de Boyce e Codd)
_______Estudaremos at aqui ______________
5 FN (5o Forma Normal)
Projeto Lgico Fundamento das FNs
Dependncia Funcional
Corresponde a um restrio entre
conjuntos de atributos em uma relao
Se X identifica Y, ento X Y e diz-se
que h uma dependncia funcional entre
eles.
X determina Y, Y funcionalmente
dependente de X
Projeto Lgico - Normalizao
Dependncias Funcionais
cod_livro titulo_livro
cod_livro cod_editora LIVRO
cod_livro nome_editora cod_livro
cod_livro peso_livro titulo_livro
cod_livro qtd_paginas
cod_editora
cod_livro qtd_capitulos
nome_editora
titulo_livro cod_liv peso_livro
titulo_livro cod_ed qtd_paginas
titulo_livro nome_ed qtd_capitulos
titulo_livro peso_liv
titulo_livro qtpaginas_liv
titulo_livro qtcapitulos_liv
cod_editora nome_editora
nome_editora cod_editora
Projeto Lgico - Normalizao
Dependncias Funcionais
titulo_livro cod_livro
cod_editora cod_editora
nome_editora nome_editora
cod_livro titulo_livro
peso_livro peso_livro
qtd_paginas qtd_paginas
qtd_capitulos qtd_capitulos
Problemas de Atualizao
Para atualizar o endereo do fornecedor, todos os registros desse
fornecedor devero ser atualizados.
Para atualizar o preo da pea, todos os registros dessa pea devero ser
atualizados.
Problemas de Excluso
Caso sejam deletadas todas as solicitaes de um fornecedor, seus dados
cadastrais tambm sero apagados.
Debate em Sala de Aula
FUNCIONARIO
matricula nome cod_depend
1052 Bob Jones D213
Est na 1FN
1053 Liz Moore
1107 Ted Smith D240
1107 Ted Smith D241
Projeto Lgico - Normalizao
2a Forma Normal (2FN ou 2NF)
Uma relao est na 2 FN se e somente se est
na 1FN e todos os atributos no chave so
totalmente dependentes da chave primria;
Diz respeito s chaves primrias compostas;
Se a chave primria de uma relao no
composta e a relao est na 1FN, ela est
tambm na 2FN;
Uma relao que est na 1 FN pode no estar na
2FN se sua chave for composta.
Projeto Lgico - Normalizao
FORNECEDOR_PECA
f# s# nome_pec cod_co cor peso quantidad
a r e
f1 p1 prego c1 cinza 13 300
f1 P2 porca c2 preto 15 200
f2 p1 prego c1 cinza 13 750
f2 p3 chave c3 azul 10 650
f2 p4 roda c2 preto 23 400
f4 p5 jante c1 cinza 25 200
Projeto Lgico - Normalizao
PECA
FORNECEDOR_PECA p#
f# nome_peca
p# cod_cor
quantidade cor
peso
quantidade
Projeto Lgico - Normalizao
3 Forma Normal (3FN ou 3NF)
Uma relao est na 3 FN se e somente se ela est na 2
FN e seus atributos no chave so mutuamente
independentes;
Os atributos so considerados mutuamente
independentes quando nenhum atributo funcionalmente
dependente de nenhuma combinao dos outros, exceto
da chave primria;
A ttulo de simplificao a terceira forma normal considera
que a relao ter somente uma chave candidata, ou seja,
a chave primria.
Projeto Lgico - Normalizao
aluno monitor
disciplina
Est na 3FN, mas no est
na BCNF.
Projeto Lgico - Normalizao
ALUNO_MONITOR MONITOR_DISCIPLIN
aluno monitor A
Atende BCNF.
Projeto Lgico - Normalizao
Benefcios
Estabilidade do Modelo Lgico
Ex.: Itens de repetio
Integridade
Economia
Custo de manipulao dos dados. Backup, restaurao,
atualizao (estr. adicionais)