Escolar Documentos
Profissional Documentos
Cultura Documentos
Passagem 1FN
Exemplo
Projetos(codp, tipo, descrio, code, nome, categ, salrio, data_incio, tempo_aloc)
Outra forma de identificar se a tabela no est na 1FN verificando se existe tabela
aninhadas, ou seja, mais de um registro para uma chave primria.
Observe o exemplo:
Considere um Pedido nmero 00001, para este pedido se observarmos o formulrio em
papel teremos muitos campos a considerar, contudo usaremos apenas alguns para
facilitar o entendimento.
PEDIDOS = {COD_PEDIDO + CLIENTE + VENDEDOR + ATENDENTE +
PRODUTO + QUANT + VALOR}
Neste momento devemos idealizar o pedido nmero: 00001 e efetuar os seguintes testes:
{COD_PEDIDO | CLIENTE | VENDEDOR | ATENDENTE | PRODUTO | QUANT |
VALOR}
{00001 | "DOUGLAS TYBEL"| "MARCO"| "JOAO" | "TENIS " | "1" | "50.00"}
{00001 | "DOUGLAS TYBEL"| "MARCO"| "JOAO" | "SANDALIA" | "2" | "80.00"}
{00001 | "DOUGLAS TYBEL"| "MARCO"| "JOAO" | "CARTEIRA" | "1" | "35.00"}
Observe que para os dados do pedido 00001 lanados acima, apenas os atributos que
esto em negrito SO NICOS, pois no se diferem. Os demais atributos mudam, no
cumprindo a 1FN onde os atributos devem ser atmicos, quer dizer nicos.
Para testarmos um dos atributos e ter certeza que este atmico, podemos efetuar uma
pergunta conforme o exemplo abaixo:
Podemos ter outro cliente para o pedido 00001 ? = No. Podemos ter apenas 1 cliente
por pedido, sendo assim este atributo atmico nico para 1 pedido.
Podemos ter outro vendedor para o pedido 00001 ? = No. Podemos ter apenas 1
vendedor por pedido.
Podemos ter outro produto para o pedido 00001 ? = Sim. Podemos ter vrios produtos
para um pedido, sendo assim, os campos aninhados devem ser extrados para outra
tabela.
Problemas
Redundncia;
Anomalias de Atualizao.
Resultado
Projetos(codp, tipo, descrio)
Resultado
Projetos(codp, tipo, descrio)
Empregados(code, nome, categ)
Categorias(categ, salrio)
ProjEmp(codp, code, data_incio, tempo_aloc)
Concluses
Exemplo
Passagem 4FN
Resultado
Livros(nrol, ttulo, editora, ano_public)
Editoras(editora, cid-edit)
AutLiv(nrol, autor)
AssLiv(nrol, assunto)
Quinta Forma Normal
Est ligada noo de dependncia de juno.
Existem tabelas na 4FN que no podem ser divididas em duas relaes sem que
se altere os dados originais.
exemplo
Explanao de que a ltima forma normal pode ser alcanada com projees
Objetivos da Normalizao
Normalizao de dados o processo formal e passo a passo que examina os atributos de
uma entidade, com o objetivo de evitar anomalias observadas na incluso, excluso e
alterao de registros.
O conceito de entidade muito importante neste processo, ou seja, devemos identificar
quais so as entidades que faro parte do projeto de banco de dados. Entidade
qualquer coisa, pessoa ou objeto que abstrado do mundo real torna-se uma tabela para
armazenamento de dados. Normalmente usa-se o Modelo de Entidade e Relacionamento
para criar o modelo do banco.
Veja um exemplo de vrias entidades j normalizadas: