Terceira Forma Normal 3FN - Normalização de dados
Veja neste artigo o que é a Terceira Forma Normal 3FN em um processo de normalização de dados, bem como a respostas a algumas perguntas, como: Preciso aplicar a normalização na terceira forma normal em todas as tabelas?
Índice deste artigo
A terceira forma normal é parte daquilo que chamamos de normalização de dados para fins de planejamento de bases de dados computacionais. É uma forma de analisar e refinar a estrutura dos dados a fim de torná-los íntegros e exclusivos, evitando repetições desnecessárias e possíveis sobrecargas no gerenciador de banco de dados.
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.
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.
Exemplo de normalização na terceira forma normal
Considere a tabela abaixo:
Tabela não está na terceira forma normal
Considerando ainda a nossa tabela Venda, veremos que a mesma não está na terceira forma normal, pois o subtotal é o resultado da multiplicação Quant X Valor_unit, desta forma a coluna subtotal depende de outras colunas não-chave.
Para normalizar esta tabela na terceira forma normal teremos de eliminar a coluna subtotal, como no exemplo a seguir:
Tabela na terceira forma normal
Conforme visto nos post primeira forma normal e segunda forma normal, a normalização torna a tabela mais otimizada e sem anomalias. Veja também o post Normalização de dados e as formas normais.
Perguntas frequentes
Qual o problema de não aplicar a terceira forma normal?
Como visto acima, a terceira forma normal tem como objetivo eliminar dados que são desnecessários no banco e que poderiam causar simplesmente o maior acúmulo de informação, inclusive incorrendo na possibilidade de desatualização desses dados.
Considere o exemplo acima: o subtotal é desnecessário, visto que ele é resultado da quantidade multiplicado pelo valor unitário e portanto a qualquer momento ele pode ser encontrado através nesta equação. Se decidirmos manter, teremos um campo a mais na tabela que obviamente irá ocupar mais espaço no banco e sempre que modificarmos a quantidade ou o valor unitário, obrigatoriamente o campo subtotal deverá ser atualizado para não correr o risco de você ter um resultado diferente do que de fato é.
Desta forma fica evidente que manter o subtotal no banco e não aplicar a terceira forma normal, traz mais prejuízo do que benefício.
Preciso aplicar a normalização na terceira forma normal em todas as tabelas?
Não. Existe algumas tabelas em que não há necessidade de aplicar a terceira forma normal, isto porque a própria característica da tabela já exclui esses dados redundantes. Seja porque o analista já observou isso e retirou na hora de montar a estrutura da tabela, ou talvez porque a própria natureza dela não traz essa necessidade de ter um campo redundante.
Assim a terceira forma normal deve ser aplicada em alguns casos apenas, onde houver uma situação similar a esse ponto fazer uma análise na suas tabelas afim de identificar campos que sejam redundante desnecessários, é uma atividade que poderá trazer benefícios no futuro.
E se eu decidir não aplicar a terceira forma normal?
Você pode trabalhar com uma tabela desnormalizada, como costumamos chamar. O que pode acontecer exatamente o que nós escrevemos na primeira pergunta desta seção. Ou seja, você terá de lidar com um dado redundante na sua tabela e sempre que houver modificação nos dados que geram esse campo redundante, ele precisará ser atualizado. Portanto o seu banco ou o seu sistema de informação precisa ser orientado a fazer essa atualização. Sem contar que em casos de banco muito grandes, isto gerará um uso a mais de recursos que poderiam ser evitados.
Veja também
- 10 itens sobre investir com pouco dinheiro: onde investir 100,00?
- Curso técnico em São José do Rio Preto. Escolas estaduais e particulares
- Download Grátis do Excel. Baixe o Excel gratuitamente
- Faculdade a distância no exterior. Existe EAD em outros países?
- Faculdades em Florianópolis: cursos da UFSC, UNISUL, UDESC e outras
- Cursos e Faculdades em Teresina. EAD e Presencial
- O que é modelagem conceitual ou modelo conceitual de dados?
- Qual a diferença de dólar comercial, paralelo e dólar turismo?
- Tipos de liderança e os modelos de líder
- Salário Mínimo no Brasil. Tabela de valores e evolução desde 1940