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 chave primária da nova entidade será o atributo do qual os atributos removidos são funcionalmente dependentes.
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.
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.
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.
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.
COMPARTILHE: Facebook Twitter WhatsApp