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?
Índice deste artigo
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 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
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 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.
Veja também
- Horário de ônibus Campinas a Indaiatuba, Itu, Sorocaba e outras cidades
- O que é o CPF - Cadastro de Pessoas Físicas e para que serve?
- Curso técnico em Sorocaba. Veja as escolas Públicas e particulares
- Faculdade boa e barata, como encontrar?
- Cursos e Faculdades em Rio Branco/AC
- Mapa do frio brasileiro. Onde e quando faz frio no Brasil?
- Quais as melhores rodovias do Brasil. As estradas paulistas são melhores?
- Quem inventou a internet? História, o inventor e a internet no Brasil
- Sites pesquisa escolar: Geografia, história, Química, Física e Biologia
- Supletivo pelo Enem? Conclusão do Ensino Médio pelo Enem