Pular para o conteúdo principal

Questão de Banco de Dados — Formas normais — SELECON 2025

Banco de DadosFormas 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:
  1. Asegunda forma normal, pois os atributos da tabela são constituídos de valores não atômicos ou multivalorados
  2. Bsegunda forma normal, pois todos os atributos não chave dependem da chave primária e não só de parte dela
  3. Cterceira forma normal, pois a chave da tabela é uma chave composta e parte dela determina um outro campo não chave
  4. 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).

Gabarito: letra B.

Link permanente: /questoes/qg610092