Questão de Banco de Dados — Formas normais — SELECON 2025
Banco de Dados›Formas normais
Código
qg610092
Banca
SELECON
Órgão
Prefeitura de Lucas do Rio Verde - MT
Ano
2025
Nível
Superior
Cargo
Auditor Fiscal do Município
Uma equipe de desenvolvimento, construindo um banco de dados, chegou a seguinte tabela de dados:Produto (codigo_produto, codigo_deposito, quantidade_estoque, projeto_alocado, preço)Sendo que a relação de dependência entre os campos da tabela é determinada por:• os campos quantidade_estoque, projeto_alocado e preço, são dependentes funcionais de (codigo_produto + codigo_ deposito), e• codigo_produto não é dependente funcional de codigo_ deposito e vice-versa...No caso exposto, identificou-se que a tabela "Produto" se encontra na:
Asegunda forma normal, pois os atributos da tabela são constituídos de valores não atômicos ou multivalorados
Bsegunda forma normal, pois todos os atributos não chave dependem da chave primária e não só de parte dela
Cterceira forma normal, pois a chave da tabela é uma chave composta e parte dela determina um outro campo não chave
Dterceira forma normal, porque existe campos não chave determinando de forma única outros campos da tabela
Revelar gabarito e comentário▾
GabaritoB — segunda forma normal, pois todos os atributos não chave dependem da chave primária e não só de parte dela
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”.
Normalização de Dados – Segunda Forma Normal (2FN)
Gabarito: letra B. A tabela Produto tem chave primária composta por codigo_produto + codigo_deposito, e todos os atributos não chave (quantidade_estoque, projeto_alocado, preco) dependem funcionalmente da chave inteira, não apenas de parte dela. Isso é a definição da Segunda Forma Normal (2FN), desde que a tabela já esteja na 1FN (o enunciado não indica violação de atomicidade). Nenhuma dependência transitiva ou parcial foi apontada, o que afasta a 3FN e a violação da 2FN.
A questão exige aplicação dos conceitos de normalização, em especial o critério para 2FN. A 2FN exige que:
A tabela esteja na 1FN (atributos atômicos, sem grupos repetitivos).
Todo atributo não chave dependa funcionalmente e completamente da chave primária (não pode haver dependência parcial de parte da chave).
No caso, a chave é composta e cada atributo não chave depende do par completo, não apenas de codigo_produto ou apenas de codigo_deposito. Portanto, a tabela satisfaz a 2FN.
Critério / Requisito
1FN (Primeira Forma Normal)
2FN (Segunda Forma Normal)
3FN (Terceira Forma Normal)
Atributos atômicos (sem grupos repetitivos)
✅ Obrigatório
✅ Obrigatório
✅ Obrigatório
Dependência funcional completa da chave primária
❌ Não exigido
✅ Obrigatório (nenhuma dependência parcial)
✅ Obrigatório
Ausência de dependência transitiva (atributo não chave → outro não chave)
❌ Não exigido
❌ Não exigido
✅ Obrigatório
Situação da tabela Produto
✅ Atende (não há indício de violação)
✅ Atende (todos os não chave dependem da chave composta inteira)
✅ Atende (não há dependência transitiva apontada)
Forma normal atingida
1FN
2FN
3FN (pois atende a todos os requisitos anteriores)
Alternativa A — ❌ Incorreta
Afirma que a tabela está na 2FN porque os atributos são não atômicos ou multivalorados. Isso é um erro duplo: primeiro, o enunciado não indica atributos não atômicos; segundo, a razão para estar na 2FN não é essa. Atributos não atômicos violariam a 1FN, não a 2FN.
Alternativa B — ✅ Correta ⟵ GABARITO
A justificativa está perfeita: "pois todos os atributos não chave dependem da chave primária e não só de parte dela". Isso descreve exatamente a condição da 2FN para chave composta.
Alternativa C — ❌ Incorreta
Afirma que a tabela está na 3FN porque a chave é composta e parte dela determina um outro campo não chave. Ora, se parte da chave determinasse outro campo, haveria dependência parcial, o que violaria a 2FN (e a 3FN exige 2FN). Portanto, a tabela não estaria na 3FN por esse motivo; a afirmação é contraditória com os dados do enunciado.
Alternativa D — ❌ Incorreta
Diz que a tabela está na 3FN porque "existe campos não chave determinando de forma única outros campos da tabela". Isso caracterizaria uma dependência transitiva, que viola a 3FN (a 3FN exige que atributos não chave não determinem outros atributos não chave). O enunciado não apresenta tal dependência; se existisse, a tabela estaria na 2FN, mas não na 3FN. A justificativa é inadequada.
PEGA ESSA DICA!
Para resolver questões de forma normal, identifique primeiro a chave primária e as dependências funcionais dadas. Se a chave é composta, verifique se algum atributo não chave depende de apenas uma parte — isso seria violação da 2FN. Depois, cheque se há dependências entre atributos não chave — isso viola a 3FN. Aqui não há nenhuma das duas violações, então a tabela está na 2FN (e também na 1FN, que é pré-requisito).