Você está na página 1de 2

Formas normais e suas aplicações

1FN → 2FN → 3FN


As formas normais são sequenciais, ou seja, se um banco se encontra na
terceira forma normal, isso também significa que o mesmo está na segunda e
também na primeira. Por isso devemos sempre começar a normalização pela
primeira forma normal, para que não hajam problemas mais a frente na nossa
normalização.
Primeira Forma Normal
Podemos dizer que uma tabela se encontra na Primeira Forma Normal se:
o Possui chave primária;
o Não possui grupos repetitivos;
o Todos os seus atributos são atômicos, ou seja, não precisa ser
decomposto.
Para chegar a primeira forma normal devemos: Determinar o atributo que
possui característica de chave primária, tornar todos atributos atômicos,
transformar o grupo repetitivo em uma nova tabela, levando a chave primária
da tabela na qual estava, para manter a ligação entre a tabela criada e a
original. Depois aplicamos também sobre essa nova tabela a primeira forma
normal.
Aplicação:
Tabela (cod_cliente, nome_cliente, tel1, tel2, endereco, cod_produto,
nome_produto, preco, quantidade) ✗

Cliente (cod_cliente, nome_cliente, tel1, tel2, rua, bairro, cidade, estado)
Produto (cod_cliente, cod_produto, nome_produto, preco, quantidade) ✓
Segunda Forma Normal
Podemos dizer que uma tabela se encontra na Segunda Forma Normal se:
o Está na primeira forma normal;
o Não possui dependências parciais da chave primária;
Para chegar a segunda forma normal verifique se a chave primária dessa
tabela é composta ou simples. Se for simples, já se encontra na segunda forma
normal. Se for composta, verifique se todos os atributos da relação dependem
de todos os atributos que compõem a chave primária. Por exemplo, se a chave
primária é composta dos atributos A , B e o campo C em questão depende
somente de B. Se sim, já está na segunda forma normal. Se não, pegue o
atributo (C) que depende parcialmente da chave primária e crie uma nova
tabela. Essa tabela terá como chave primária o campo da chave primária
original que determinou o campo C (nesse exemplo é o B) e adicione como
atributo simples da relação o C. Veja o exemplo abaixo: (Obs: ➙ significa
“determina”, ou seja, define, indica, aponta)
Aplicação:
Cliente (cod_cliente, nome_cliente, tel1, tel2, rua, bairro, cidade, estado) ✓
(não possui chave primária composta)

Produto (cod_cliente, cod_produto, nome_produto, preco, quantidade) ✗


cod_produto ➙ nome_produto, preco (dependência parcial)
cod_cliente, cod_produto ➙ quantidade (dependência total)
Resp: Produto (cod_produto, nome_produto, preco) ✓
Resp: Compra (cod_cliente, cod_produto, quantidade) ✓
Terceira Forma Normal
Podemos dizer que uma tabela se encontra na Terceira Forma Normal se:
o Está na segunda forma normal;
o Se nenhum dos campos foram determinados transitivamente pela chave
primária.
Para chegar a terceira forma normal verifique os campos que não são chave
primária. Se algum desses campos não chave possuir dependência com outro
campo não chave, então essa tabela não se encontra na terceira forma normal.
Veja o exemplo abaixo:
Carro (placa, modelo, km_rodados, cod_fabricante, nome_fabricante) ✗
Placa, modelo ➙ km_rodados
Placa, modelo ➙cod_fabricante
Placa, modelo ➙ nome_fabricante
Cod_frabricante ➙ nome_fabricante
Carro (placa, modelo, kmRodados, cod_fabricante) ✓
Fabricante (cod_fabricante, nome_fabricante) ✓
Conclusão
Aplicando essas três formas normais podemos dizer que o nosso banco já está
normalizado. Alguns bancos, com muita movimentação, necessitam de uma
normalização mais específica. Esses bancos usam também a FNBC, a quarta e
a quinta forma na normalização. Por isso, para um próximo assunto, iremos dar
continuidade a normalização de dados, abrangendo essas formas. Contudo,
para a maioria dos casos a terceira normalização já está suficiente.

Você também pode gostar