Primeira Forma Normal 1FN - Normalização de dados

Saiba o que é a Primeira Forma Normal, denominada 1FN e aplicada no processo de normalização de dados no processo de modelagem de banco de dados. Quais os problemas de uma tabela não normalizada com 1FN?

Home » Tecnologia

O planejamento de um banco de dados é a tapa mais importante para garantir o sucesso do armazenamento e manipulação dos dados no futuro. Como serão as tabelas, seus relacionamentos, os atributos de cada um, chaves, índices e muitos outros itens são de extrema importância para garantir o sucesso do banco de dados.

Neste processo existe também o que conhecemos como normalização de dados que é uma etapa importante que visa garantir uma série de benefícios para o armazenamento e a manipulação dos dados de maneira muito mais eficiente.

A normalização de dados é um processo importante no processo de modelagem de dados. A primeira parte da normalização é chamada de 1FN ou primeira forma normal, em uma escala que vai até cinco. Veja o post normalização de dados e as formas normais que mostra o uso das principais formas normais.

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.

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.

Exemplo de normalização de dados. Primeira forma normal

Considere a tabela cliente abaixo:

Cliente

Código_cliente

Nome

* Telefone

Endereço

Agora a tabela com os dados:

tabela desnormalizada, ou seja, não está na primeira forma normal

Tabela desnormalizada, ou seja, não está na 1ª forma normal

Analisando teremos:

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, como no exemplo a seguir:

tabela ainda não está na primeira forma normal

Tabela ainda não está na primeira forma normal

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. Veja o resultado a seguir:

tabela na 1ª forma normal

Tabela na primeira forma normal

tabela na primeira forma normal

Tabela na 1ª forma normal

Na segunda tabela a chave primária está implícita, isto voe poderá encontrar algumas literaturas especializadas, onde nem sempre ela é especificada, mas ela deverá existir.

No exemplo acima foi gerado uma segunda entidade para que a primeira forma normal fosse satisfeita, contudo é importante ressaltar que nem sempre encontramos banco de dados com tabelas normalizadas. Existem casos onde as repetições são poucas ou o cenário permite administrar as repetições sem trazer grandes consequências.

Quais os problemas de uma tabela não normalizada com 1FN?

Muitos. A primeira forma normal tenta resolver um dos maiores problemas de banco de dados que é repetição e a desorganização deles. Imagine um campo telefone que permita a entrada de mais de um valor (dois números de telefones), por exemplo. Isto traria problemas na busca de um dos valores, por exemplo.

Outro problema seria um campo endereço onde as partes não estejam desmembradas. Isto é, um campo que permitisse eu escrever um endereço assim:

Rua das Oliveiras, 256, Parque Novo Mundo, São Paulo, SP.

Como seria possível fazer uma busca por endereços de determinado bairro apenas ou de determinadas cidades? Veja que a normalização irá trazer inúmeros benefícios de performance do banco e claro nos possibilitaria trabalhar com esses dados da forma que fosse necessário.

Toda tabela precisa obrigatoriamente ser normalizada com 1FN?

Não. Aliás, poucas. Na verdade a normalização é um processo corretivo que deve ser aplicado em casos específicos onde o problema for identificado. Claro que tudo irá depender de como a análise dos dados foram feitas, mas um analista experiente, já a aplica a normalização por padrão.

COMPARTILHE: Facebook Twitter WhatsApp




VEJA TAMBÉM:

 
QUER FAZER UMA FACULDADE GRATUITA? ESCOLHA UMA OPÇÃO:
© 2021 - Utilidade Pública: Tecnologia, Educação e Cidadania.
Este site usa cookies e ao continuar navegando, você concorda com a política de privacidade.