Questão de Banco de Dados — Formas normais — FCC 2018
Banco de Dados›Formas normais
Código
fc048996
Banca
FCC
Órgão
SEFAZ-SC
Ano
2018
Cargo
Auditor-Fiscal da Receita Estadual - Auditoria e Fiscalização (Prova 3)
Se na entidade item Pedido fosse adicionado o atributo valorTotalitem e nesse atributo fosse armazenado o resultado da multiplicação do valor contido no atributo qtditePed da entidade ItemPedido pelo valor contido no atributo PreUniPro da entidade Produto, a entidade Item Pedido violaria
Aa terceira forma normal (3FN).
Ba segunda forma normal (2FN).
Ca primeira forma normal (1FN).
Dtodas as formas normais.
Eas regras de integridade referencial.
Revelar gabarito e comentário▾
GabaritoA — a terceira forma normal (3FN).
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Formas normais: dependência transitiva e 3FN
Gabarito: letra A. A adição do atributo valorTotalItem na tabela ItemPedido, calculado a partir de qtditePed (atributo não-chave da própria tabela) e PreUniPro (atributo de outra tabela), introduz uma dependência transitiva: valorTotalItem depende funcionalmente de qtditePed, que por sua vez não é chave primária. Uma relação está na 3FN se estiver na 2FN e nenhum atributo não-chave depender transitivamente de uma chave candidata. Logo, a violação é da terceira forma normal.
A questão testa o conceito de dependência transitiva, que é o cerne da 3FN. Quando um campo pode ser obtido por cálculo a partir de outros campos não-chave, rompe-se a condição de que todo atributo não-chave deve depender exclusivamente da chave primária.
Alternativa A — ✅ Correta ⟵ GABARITO
A 3FN exige que não haja dependência transitiva de atributos não-chave. Como valorTotalItem depende de qtditePed (não-chave) e PreUniPro (não pertence nem à chave), ele não é funcionalmente dependente apenas da chave primária da tabela. Portanto, a inclusão viola a 3FN.
Alternativa B — ❌ Incorreta
A 2FN trata de dependências parciais, ou seja, atributos que dependem apenas de parte de uma chave composta. A situação descrita não gera dependência parcial (a tabela provavelmente tem chave simples ou o atributo não depende de parte dela), mas sim dependência transitiva. A violação é da 3FN, não da 2FN.
Alternativa C — ❌ Incorreta
A 1FN exige que todos os atributos sejam atômicos (indivisíveis). O atributo valorTotalItem é um valor numérico simples, portanto atômico. Não há violação da 1FN.
Alternativa D — ❌ Incorreta
A tabela original (sem o atributo calculado) poderia estar em 1FN, 2FN e até 3FN. A adição do campo calculado quebra apenas a 3FN, não as formas anteriores nem todas elas.
Alternativa E — ❌ Incorreta
A integridade referencial é uma regra de consistência entre chaves estrangeiras e primárias de tabelas relacionadas. A criação de um atributo calculado dentro de uma mesma tabela não afeta a integridade referencial, pois não envolve chaves estrangeiras.
PEGA ESSA DICA!
Para identificar violações de formas normais, pergunte-se: "este atributo pode ser obtido a partir de outros atributos não-chave?" Se sim, é dependência transitiva (3FN). "Ele depende de apenas parte da chave?" Se sim, é dependência parcial (2FN). "Ele contém valores múltiplos ou compostos?" Se sim, viola a 1FN. Memorize as definições e treine com exemplos – a banca adora testar esses conceitos.