Banco de Dados - Normalização

Propaganda
Banco de Dados - Normalização
Helder Antero Amaral Nunes
[email protected]
Normalização



Procedimento de organização e melhoramento das tabelas;
Não é uma regra, mas é uma proposta de eliminar possíveis anomalias em um
banco de dados;
Está intimamente ligada aos relacionamentos entre as tabelas.
Normalização – Vantagens e Desvantagens


Vantagens:
 Evita redundância de dados.
Desvantagens:
 Normalizar excessivamente pode diminuir o desempenho do banco de dados
Normalização – 1ª Forma Normal (1FN)


A primeira forma normal diz que:
 Uma tabela não deve conter campos multivalorados (colunas que possuem
mais de uma valor para uma única linha)
O que fazer para solucionar?
 Remover esse campo multivalorado e adicioná-lo junto com a chave primária
da tabela em uma nova tabela.
Normalização – 1ª Forma Normal (1FN)
CPF
Nome
Telefone
010.010.010-11
Maria das Dores
(81) 9999-9999
010.010.010-11
Maria das Dores
(81) 8888-8888
111.111.111-11
João da Silva
(81) 7777-7777
1FN
CPF
Nome
010.010.010-11
Maria das Dores
111.111.111-11
João da Silva
CPF
Telefone
010.010.010-11
(81) 9999-9999
010.010.010-11
(81) 8888-8888
111.111.111-11
(81) 7777-7777
Normalização – 2ª Forma Normal (2FN)


A segunda forma normal diz que:
 Todos os atributos não chaves devem depender de TODA a chave primária, ou
seja, Atributos não chaves não podem depender de apenas PARTE da chave;
 E estar na 1º Forma Normal (1FN)
O que fazer para solucionar?
 Esse atributo e a “parte” da chave que ele depende devem ser colocados em
uma nova tabela.
Normalização – 2ª Forma Normal (2FN)
Item de pedido
N. Pedido
Cod.
Produto
Quant.
Produto
Desc.
Produto
Valor Prod.
Valor Total
1
1
1
Sabão
2.00
2.00
2
2
3
Coca-cola
4.00
12.00
2FN
Item de pedido
Produto
Cod.
Produto
Desc.
Produto
Valor Prod.
1
1
Sabão
2.00
3
2
Coca-cola
4.00
N.
Pedido
Cod
Prod.
Valor
Total
Quant.
Prod.
1
1
2
2
1
12
Normalização – 3º Forma Normal (3FN)


A terceira forma normal diz que:
 Cada atributo não-chave não poderá ser dependente de outro atributo nãochave;
 E estar na 2º Forma Normal (2FN).
O que fazer para solucionar?
 Retirar esse atributo junto com o dependente e colocá-los em uma nova
tabela.
Normalização – 3º Forma Normal (3FN)
Pedido
N. Pedido
Prazo de
Entrega
Cod. Cliente
Nome do
Cliente
Endereço do
Cliente
1
11/05/2014
1
João
Rua B, 11
2
11/05/2014
3
Maria
Rua A, 50
3FN
Pedido
Cliente
N. Pedido
Prazo de
Entrega
Cod.
Cliente
Cod.
Cliente
Nome do
Cliente
Endereço
do Cliente
1
1
1
1
João
Rua B, 11
2
1
3
3
Maria
Rua A,50
Download