Professional Documents
Culture Documents
Normalizao
Dr. E.
Normalizao
Objetivo:
Prover diretrizes para o projeto de esquemas de banco de dados bem-formados. bemNa prtica: as formas normais ajudam a projetar bancos relacionais que: reduzem a duplicao desnecessria de dados; reduzem as inconsistncias; reduzem as anomalias de update, insert e delete. update,
3
Entidade no normalizada
Um pedido pode conter vrios produtos; O modelo relacional, por sua definio, s permite domnios de colunas de tipos atmicos, i.e., colunas no podem ter valores repetidos numa mesma tupla.
no. pedido prazo cliente ... produto... v.tt. cod.v. n.v. produto... produto... produto...
4
cdigo produto
desc. produto
unidade produto
quant. produto
cdigo vend.
nome vend.
Entidades (1FN): PEDIDO e ITEM-PEDIDO ITEMno. do pedido prazo entrega cliente endereo cidade UF CNPJ insc. estad.
cdigo vend.
nome vend.
no. do pedido
cdigo produto
desc. produto
unidade produto
quant. produto
Dependncia Funcional
Definio: Definio: Um conjunto de atributos <C1..Cn>
dependente funcionalmente do conjunto <D1..Dm>, se para cada valor de <D1..Dm> existe apenas um nico valor para <C1..Cn>. Formalmente: <D1..Dm> <C1..Cn>
Exemplos: Exemplos:
No-PEDIDO NoPRAZOPRAZO-ENTREGA CLIENTE ENDEREOENDEREO-CLIENTE CODIGOCODIGO-PRODUTO DESCDESC-PRODUTO No. PEDIDO, CDIGO-PRODUTO CDIGOQTDEQTDE-PRODUTO 8
10
11
Entidade na 2FN
PEDIDO (j est na 2FN)
no. do pedido
prazo entrega
cliente
endereo
cidade
UF
CNPJ
insc. estad.
cdigo vend.
nome vend.
13
Entidades na 2FN
ITEM_DO_PEDIDO (modificada pela 2FN)
no. do pedido
cdigo produto
quant. produto
cdigo produto
desc. produto
unidade produto
14
Entidades na 3FN
PEDIDO (modificada pela 3FN)
no. do pedido prazo entrega cdigo cliente cdigo vend. val total pedido
16
Entidades na 3FN
ITEM_DO_PEDIDO (modificada pela 3FN)
no. do pedido
cdigo produto
quant. produto
cdigo produto
desc. produto
unidade produto
17
Comentrios
A primeira forma normal a nica que obrigada pelo sistema relacional, j que no possvel ter tuplas distintas com a mesma chave primria! As outras formas normais so uma deciso de projeto. Portanto, possvel ter tabelas que no estejam normalizadas alm da 1FN no banco.
18
Comentrios
O que a 2FN e a 3FN fornecem um conjunto de diretrizes para:
Separar atributos que pertenam a diferentes entidades em diferentes relaes (tabelas) Agrupar os atributos que pertenam mesma entidade numa mesma relao (tabela).
19
CLIENTE
nome i.e. end. uf cid. cnpj
PEDIDO
VENDEDOR
ITEMITEM-PEDIDO
qtde. produto
nome
PRODUTO
desc.. produto unid. produto val. un. produto 20
Modelo Relacional
cod. cliente cod. vendedor
CLIENTE
PEDIDO
no. pedido
VENDEDOR
ITEMITEM-PEDIDO
cod. produto
PRODUTO
21