1
resposta

Dúvida: Exercício Aplicando a Terceira Forma Normal

A resposta que eu esperava para o exercício seria remover o atributo Valor_unitario da tabela Vendas, pois este deve constar da tabela Produtos para evitar redundância. Não entendi por que a resposta é remover o atributo Subtotal da tabela Vendas, tendo em vista que a existência deste atributo parece ser uma opção do cliente para armazenar uma consolidação do valor da venda do produto naquele pedido.

1 resposta

Cristian,

O seu raciocínio é logico e sua dúvida é pertinente. Porém tem um detalhe que somente a experiência pode te trazer...

...O TEMPO... abaixo uma frase bonita pra um causar impacto bacana:

"Com organização e tempo, acha-se o segredo de fazer tudo e bem feito. Pitagoras"

Agora sério!!!

  • Vamos supor que houve uma deflação e os produtos baixaram de preço para manter a competividade entre as empresas concorrentes.

Bom, pediram para você RECALCULAR o valor de uma nota fiscal de 11 meses atrás pois ocorreu uma devolução de um produto em garantia e o cliente precisa ser ressarcido e blá-blá-blá... segue todo aquele papo furado bastante enfadonho que os usuários descarregam em nossa áreas auditivas como se estes fossem fossas assépticas...

Você sabe qual é o valor que o produto foi vendido na época? Hum... entendeu?

ENTÃO...

1º) O valor unitário na tabela de vendas permanece como o valor vendido na época.

2º) O valor do subtotal pode ser novamente calculado, a única necessidade de armazenar esse valor é para poupar PROCESSAMENTO de MÁQUINA. Antigamente o processamento de máquina (CPU) era mais caro monetariamente que o armazenamento de dados físicos (WHINCHESTER ou HD), mas a partir dos anos 70 (eu estimo) esse jogo virou.

Abaixo alguma documentação bacana que sugiro você ler para completar seus estudos:

==========================================================

Formas Normais

Juliana Jenny Kolb - julho 21, 2017

...

Terceira forma normal (3FN): eliminação da dependência funcional transitiva

“Uma tabela estará na 3FN quando estiver na 2FN e não houver dependência funcional transitiva entre seus atributos.”.

Assim como para estar na 2FN é preciso estar na 1FN, para estar na 3FN é preciso estar também na 2FN. 3FN define que todos os atributos dessa tabela devem ser funcionalmente independentes uns dos outros, ao mesmo tempo que devem ser dependentes exclusivamente da chave primária da tabela. 3NF foi projetada para melhorar o desempenho de processamento dos banco de dados e minimizar os custos de armazenamento. Exemplo: FUNCIONARIO = {ID + NOME + VALOR_SALARIO + VALOR_FGTS}. Como sabemos o valor do FGTS é proporcional ao salário, logo o atributo normal “VALOR_FGTS” é dependente do também atributo normal “VALOR_SALARIO”. Para normalizar, é necessário:

Identificar os dados dependentes de outros (nesse exemplo “VALOR_FGTS”);

Removê-los da tabela. Esses atributos poderiam ser definitivamente excluídos — e deixando para a camada de negócio a responsabilidade pelo seu cálculo — ou até ser movidos para uma nova tabela e referenciar a principal (“FUNCIONARIO”).

...

https://jkolb.com.br/formas-normais/

==========================================================

As cinco formas normais e porque você deve utilizá-las

Sep 22, 2017 - 8 min read

Luiz Guilherme Fonseca Rosa

Computer Science BSc, fullstack developer.

https://medium.com/@luizguilhermefr/cinco-formas-normais-8f238bc30189

==========================================================

Boyce Codd até 5 Forma Normal

https://1library.org/article/boyce-codd-forma-normal-princ%C3%ADpios-sistema-base-dados.zw0wx90y

==========================================================

Banco de Dados descomplicado: Resumo de normalização ou formas normais.

por Cristiane Selem Ferreira

Tempo de leitura aproximada: 10 a 15 minutos

https://www.estrategiaconcursos.com.br/blog/banco-dados-forma-normal/

==========================================================

Consegui te ajudar?

[]'s,

Fabio I.