Questão FC372748
Considere os campos da tabela abaixo. cpf VARCHAR(18) rg VARCHAR(18) anoNascimento INT nome VARCHAR(70) anosContribuicao INT valorReceberAno DOUBLE totalReceber DOUBLE Sob o ponto
Projeto e Modelagem de Dados
FCC · 2021
Considere os campos da tabela abaixo.
cpf VARCHAR(18)
rg VARCHAR(18)
anoNascimento INT
nome VARCHAR(70)
anosContribuicao INT
valorReceberAno DOUBLE
totalReceber DOUBLE
Sob o ponto de vista da normalização de banco de dados, a tabela, cujos campos são mostrados acima, infringirá a terceira forma normal se
- utilizar chave primária composta por cpf e rg.
- não estabelecer relação de integridade referencial com outra tabela.
- o campo totalReceber for resultante da multiplicação do campo anosContribuicao por valorReceberAno.
- não contiver colunas com dependência funcional transitiva.
- a quantidade de anosContribuicao for menor do que anoNascimento.
Mostrar resposta e comentário
Gabarito
Certo
Comentário do professor
A terceira forma normal exige que nenhum atributo não-chave dependa de outro atributo não-chave; ou seja, não são permitidas dependências transitivas.
No caso em questão, se o campo totalReceber for obtido pela multiplicação de anosContribuicao por valorReceberAno, existe uma cadeia de dependência: chave primária → anosContribuicao/valorReceberAno → totalReceber. Isso caracteriza uma dependência transitiva e, portanto, viola a 3ª Forma Normal. A relação fica anômala porque um atributo não-chave é derivado de outros não-chave.
Correção prática: não persista o valor derivado; calcule-o quando necessário (por exemplo, \(totalReceber = anosContribuicao \times valorReceberAno\)) ou remova/normalize o atributo para outra estrutura.
Conteúdo do catálogo FC Concursos · Atualizado em