Segunda Forma Normal 2FN - Normalização de dados

O que é a Segunda Forma Normal 2FN - Normalização de dados

Home » Tecnologia

Uma tabela está na Segunda Forma Normal 2FN se ela estiver na 1FN e todos os atributos não chave forem totalmente dependentes da chave primária (dependente de toda a chave e não apenas de parte dela).

Se o nome do produto já existe na tabela produtos, então não é necessário que ele exista na tabela de produtos. A segunda forma normal trata destas anomalias e evita que valores fiquem em redundância no banco de dados.

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.

Exemplo de segunda forma normal

Considere a tabela vendas abaixo:

Vendas

N_pedido

Código_produto

Produto

Quant

Valor_unit

Subtotal

Agora a tabela com os dados:

tabela não está na segunda forma normal

Tabela não está na segunda forma normal

Analisando teremos:

O nome do produto depende do código do produto, porém não depende de N_pedido que é a chave primária da tabela, portanto não está na segunda forma normal. Isto gera problemas com a manutenção dos dados, pois se houver alteração no nome do produto teremos que alterar em todos os registros da tabela venda.

Para normalizar esta tabela teremos de criar a tabela Produto que ficará com os atributos Código_produto e produto e na tabela Venda manteremos somente os atributos N_pedido, código_produto, quant, valor_unit e subtotal. Veja o resultado abaixo:

tabela na segunda forma normal

Tabela na segunda forma normal

tabela na 2ª forma normal

Tabela na 2ª forma normal

Conforme visto na Primeira forma normal, quando aplicamos normalização é comum gerar novas tabelas a fim de satisfazer as formas normais que estão sendo aplicadas.

Perguntas e respostas

O que significa tabela desnormalizada?

Uma tabela desnormalizada é aquela em que não foi aplicado as regras de normalização de dados e portanto elas não atenderia uma ou mais das formas normais previstas.

Toda a tabela tem que ser aplicada a segunda forma normal?

Não. Existem tabelas onde a primeira, segunda ou a terceira forma normal não são aplicáveis, isto porque a própria natureza da tabela já está normalizada e portanto não há necessidade de fazer aplicação da segunda forma normal, por exemplo.

O que acontece se eu não fizer aplicação da segunda forma normal em uma tabela?

Conforme explicado acima, existem casos em que de fato não é necessário pois não há nenhuma situação que implique na segunda forma normal. Se, contudo, houver a necessidade de fazer aplicação dela e você não fizer, o que acontece é que a tabela estará desnormalizada e implicará em uma redundância de dados, bem como um uso mais excessivo de recursos do banco.

Talvez o grande problema de manter uma tabela desnormalizada seja o risco que você corre de ficar com dados desatualizados, ou ter o cuidado de sempre que ela for alterada você correr um script de atualização.

O de quem é a responsabilidade de cuidar da normalização dos dados?

Esta responsabilidade recai sobre o projetista do banco de dados, pois não é um processo que você pode fazer o deve fazer a qualquer momento, mas idealmente ele deve ser feito na fase de projeto do banco para que quando ele for criado ele já seja criado dentro das formas normais previstas.


VEJA TAMBÉM:

CANAL NO YOUTUBE

INSCREVA-SE:



Sistemas Web

Playlist de SQL

Youtube Youtube Youtube
© 2021 - Utilidade Pública: Tecnologia, Educação e Cidadania.