Você está na página 1de 20

Aula 5:

Normalização de dados e as Formas Normais


prof. Gustavo Zimmermann
Normalização
...
Banco de Dados II – Aula 5: Normalização de dados e as Formas Normais

Normalização

Definição
Normalização de dados é o processo formal e passo a passo que examina
os atributos de uma entidade, com o objetivo de evitar anomalias
observadas na inclusão, exclusão e alteração de registros.
A regra de ouro que devemos observar no projeto de um banco de dados
baseado no Modelo Relacional de Dados é a de "não misturar assuntos em
uma mesma Tabela". Por exemplo: na Tabela Clientes devemos colocar
somente campos relacionados com o assunto Clientes. Não devemos misturar
campos relacionados com outros assuntos, tais como Pedidos, Produtos, etc. Essa
"Mistura de Assuntos" em uma mesma tabela acaba por gerar repetição
desnecessária dos dados bem como inconsistência dos dados.
prof. Gustavo Zimmermann | contato@gust4vo.com
Banco de Dados II – Aula 5: Normalização de dados e as Formas Normais

Normalização

Definição

Normalmente após a aplicação das regras de normalização de dados, algumas tabelas acabam sendo
divididas em duas ou mais tabelas, o que no final gera um número maior de tabelas do que o
originalmente previsto. Este processo causa a simplificação dos atributos de uma tabela, colaborando
significativamente para a estabilidade do modelo de dados, reduzindo-se consideravelmente as
necessidades de manutenção.

prof. Gustavo Zimmermann | contato@gust4vo.com


Banco de Dados II – Aula 5: Normalização de dados e as Formas Normais

Normalização

Definição

Os objetivos da normalização
são muitos, entre eles destaco:

• Minimização de redundâncias e inconsistências;


• Facilidade de manipulações do banco de dados;
• Ganho de performance no SGBD;
• Facilidade de manutenção do sistema de
Informação;
• Entre outros.

prof. Gustavo Zimmermann | contato@gust4vo.com


Formas normais
normalização
Banco de Dados II – Aula 5: Normalização de dados e as Formas Normais

Formas normais

Definição
Segundo Heuser (2001), uma forma normal (FN) é uma regra que deve ser obedecida por
uma tabela para que ela seja considerada “bem projetada”. Existem inúmeras formas
normais, ou seja, diversas regras, cada vez mais rígidas, para verificar tabelas em banco de
dados relacionais. No entanto, pelo menos 3 FNs são consideradas essenciais para a
construção de um bom projeto de banco de dados.
Dica: Antes de começar a aplicar as
Formas normais verifique se a sua
• Primeira Forma Normal (1FN) Tabela esta falando sobre um único

• Segunda Forma Normal (2FN) assunto e se não pode ser dividida em


duas ou mais tabelas. Se isso acontecer,

• Terceira Forma Normal (3FN) divida a tabela e revise a Relação entre


as tabelas para definir a(s) Chave(s)

prof. Gustavo Zimmermann | contato@gust4vo.com estrangeira(s).


Banco de Dados II – Aula 5: Normalização de dados e as Formas Normais

Formas normais

1FN – Primeira Forma Normal


Uma relação estará na primeira forma normal 1FN,
se não houver grupo de dados repetidos, isto é, se
todos os valores forem únicos. Em outras palavras
podemos definir que a primeira forma normal
não admite repetições ou campos que tenha
mais que um valor.
prof. Gustavo Zimmermann | contato@gust4vo.com
Banco de Dados II – Aula 5: Normalização de dados e as Formas Normais

Formas normais

1FN – Primeira Forma Normal


Os procedimentos mais recomendados para aplicar a
1FN são os seguintes:

a) Identificar a chave primária da entidade;


b) Identificar o grupo repetitivo e removê-lo da entidade;
c) Criar uma nova entidade com a chave primária da entidade anterior e o grupo
repetitivo.

A chave primária da nova entidade será obtida pela concatenação da


chave primária da entidade inicial e a do grupo repetitivo.
prof. Gustavo Zimmermann | contato@gust4vo.com
Banco de Dados II – Aula 5: Normalização de dados e as Formas Normais

Formas normais

1FN – Primeira Forma Normal


1
Todos os clientes possuem Rua, CEP e Bairro, e
essas informações estão na mesma célula da
tabela, logo ela não está na primeira forma
normal. Para normalizar, deveremos colocar cada
informação em uma coluna diferente.

prof. Gustavo Zimmermann | contato@gust4vo.com


Banco de Dados II – Aula 5: Normalização de dados e as Formas Normais

Formas normais

1FN – Primeira Forma Normal


2

Mesmo com o ajuste acima, a tabela ainda não está na primeira forma normal, pois há clientes com
mais de um telefone e os valores estão em uma mesma célula. Para normalizar será necessário criar uma
nova tabela para armazenar os números dos telefones e o campo-chave da tabela cliente.

3
Dica: Na 1FN pegue os Atributos
Compostos faça a divisão dos mesmos
em colunas, da mesma Tabela, e os
Atributos Multivalorados em uma

prof. Gustavo Zimmermann | contato@gust4vo.com


nova tabela.
Banco de Dados II – Aula 5: Normalização de dados e as Formas Normais

Formas normais

2FN – Segunda Forma Normal


Uma relação está na 2FN se, e somente se, estiver na 1FN e
cada atributo não-chave for dependente da chave primária
inteira, isto é, cada atributo não-chave não poderá ser
dependente de apenas parte da chave.
No caso de tabelas com chave primária composta, se um atributo
depende apenas de uma parte da chave primária, então esse
atributo deve ser colocado em outra tabela.

prof. Gustavo Zimmermann | contato@gust4vo.com


Banco de Dados II – Aula 5: Normalização de dados e as Formas Normais

Formas normais

2FN – Segunda Forma Normal


Procedimentos:

a) Identificar os atributos que não são funcionalmente dependentes de toda a


chave primária;
b) Remover da entidade todos esses atributos identificados e criar uma nova
entidade com eles.

A chave primária da nova entidade será o atributo do qual os atributos do qual


os atributos removidos são funcionalmente dependentes.

prof. Gustavo Zimmermann | contato@gust4vo.com


Banco de Dados II – Aula 5: Normalização de dados e as Formas Normais

Formas normais

2FN – Segunda Forma Normal


1
codigo veiculo proprietario cod_prop marca ID-marca
V01 Gol José Garcia 25 VW 1

V02 Uno Julian 30 Fiat 2


Almeida
V03 HB20 Lia Itachi 35 Hyundai 3

V03 City Priscila 40 Honda 5


Kravinsky

Chave Composta

prof. Gustavo Zimmermann | contato@gust4vo.com


Banco de Dados II – Aula 5: Normalização de dados e as Formas Normais

Formas normais

2FN – Segunda Forma Normal


Proprietarios Marcas
2 3
id proprietario id marca
1 José Garcia 1 VW

2 Julian Almeida 2 Fiat

3 Lia Itachi 3 Hyundai


4 Honda
4 Priscila Kravinsky

Dica: Na 2FN, verifique se a Tabela esta na


Veiculos 1FN e considere todos os Atributos
4 codigo veiculo cod_prop ID-marca
Identificadores como se fossem uma
V01 Gol 25 1
Chave Composta. Teste cada Atributo
V02 Uno 30 2
com os Atributos da Chave Composta
V03 HB20 35 3 verificando se o Atributo precisa do Atributo
V03 City 40
prof. Gustavo Zimmermann | contato@gust4vo.com
5 Identificador analisado para existir.
Banco de Dados II – Aula 5: Normalização de dados e as Formas Normais

Formas normais

3FN – Terceira Forma Normal


Uma tabela está na Terceira Forma Normal 3FN se
ela estiver na 2FN e se nenhuma coluna não-
chave depender de outra coluna não-chave.
Na terceira forma normal temos de eliminar aqueles
campos que podem ser obtidos pela equação de
outros campos da mesma tabela.
prof. Gustavo Zimmermann | contato@gust4vo.com
Banco de Dados II – Aula 5: Normalização de dados e as Formas Normais

Formas normais

3FN – Terceira Forma Normal


Procedimentos:

a) Identificar todos os atributos que são funcionalmente dependentes de outros


atributos não chave;
b) Removê-los.

A chave primária da nova entidade será o atributo do qual os


atributos removidos são funcionalmente dependentes.

prof. Gustavo Zimmermann | contato@gust4vo.com


Banco de Dados II – Aula 5: Normalização de dados e as Formas Normais

Formas normais

3FN – Terceira Forma Normal


1

O subtotal é o resultado da multiplicação Quant X


Valor_unit, desta forma a coluna subtotal depende de
outras colunas não-chave.
prof. Gustavo Zimmermann | contato@gust4vo.com
Banco de Dados II – Aula 5: Normalização de dados e as Formas Normais

Formas normais

3FN – Terceira Forma Normal


2
Para normalizar esta tabela na terceira
forma normal teremos de eliminar a
coluna subtotal.

Dica: Na 3FN, verifique se a Tabela esta na 2FN e analise os Atributos


Derivados, normalmente estes dependem de outro atributo que não é a
Chave Primária e não precisaram estar armazenado na Tabela.

prof. Gustavo Zimmermann | contato@gust4vo.com


<fim />
bora pra casa!