Pular para o conteúdo principal

Questão de Banco de Dados — Geral — FUNDATEC 2026

Banco de DadosGeral
Código
qa433475
Banca
FUNDATEC
Órgão
IFC
Ano
2026
Cargo
PEBTT ( )

Considere a seguinte relação utilizada em um sistema acadêmico:

 

DISCIPLINA_OFERTA

 

Imagem associada para resolução da questão

 

Considere também as seguintes dependências funcionais:

 

1. id_oferta → nome_disciplina, id_professor

 

2. id_professor → nome_professor, departamento_professor

 

Com base nas regras de normalização até a Terceira Forma Normal (3FN), assinale a alternativa correta.

  1. AA tabela já se encontra na Terceira Forma Normal, pois todos os atributos dependem da chave primária.
  2. BA tabela viola a 3FN devido à existência de dependência transitiva entre atributos não chave.
  3. CA tabela viola a 1FN porque possui múltiplos atributos relacionados ao professor.
  4. DA tabela viola a 2FN porque a chave primária possui mais de um atributo.
  5. EA tabela está na 2FN, mas não pode ser transformada para a 3FN.
Revelar gabarito e comentário

GabaritoB — A tabela viola a 3FN devido à existência de dependência transitiva entre atributos não chave.

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 Banco de Dados: 3FN e Dependência Transitiva

Gabarito: letra B. A tabela DISCIPLINA_OFERTA viola a Terceira Forma Normal (3FN) porque existe uma dependência transitiva: id_oferta → id_professor e id_professor → nome_professor, departamento_professor, ou seja, atributos não chave dependem de outro atributo não chave, e não diretamente da chave primária. Essa é a definição clássica de violação da 3FN, conforme a teoria da normalização de bancos de dados relacionais.

A normalização é o processo de organizar os dados de um banco relacional para reduzir redundâncias e anomalias, dividindo tabelas maiores em tabelas menores e mais bem estruturadas. Cada forma normal (1FN, 2FN, 3FN, FNBC, 4FN, 5FN) impõe um critério mais rigoroso de organização. A Primeira Forma Normal (1FN) exige que todos os atributos sejam atômicos (indivisíveis), sem grupos repetitivos ou atributos multivalorados. A Segunda Forma Normal (2FN) exige que a tabela esteja na 1FN e que todo atributo não chave dependa da chave primária inteira, não de apenas parte dela (eliminando a dependência parcial). A Terceira Forma Normal (3FN) exige que a tabela esteja na 2FN e que não haja dependência transitiva, ou seja, que nenhum atributo não chave dependa de outro atributo não chave.

No caso da questão, a chave primária é id_oferta (chave simples). As dependências funcionais são:

  1. id_oferta → nome_disciplina, id_professor

  2. id_professor → nome_professor, departamento_professor

Aqui, nome_disciplina e id_professor dependem diretamente da chave id_oferta. Porém, nome_professor e departamento_professor dependem de id_professor, que é um atributo não chave. Isso configura uma dependência transitiva: id_oferta → id_professor → nome_professor. O atributo nome_professor não depende diretamente da chave primária, mas sim de outro atributo não chave (id_professor).

Para corrigir essa violação e levar a tabela à 3FN, é necessário decompor a relação em duas:

  • DISCIPLINA: id_oferta, nome_disciplina, id_professor (chave: id_oferta)

  • PROFESSOR: id_professor, nome_professor, departamento_professor (chave: id_professor)

Assim, cada atributo não chave passa a depender exclusivamente da chave primária de sua respectiva tabela, eliminando a dependência transitiva.

A pegadinha desta questão está em confundir a violação da 3FN com a da 2FN. Como a chave primária é simples (id_oferta), não é possível haver dependência parcial (que violaria a 2FN), pois não há uma chave composta. A violação é especificamente a dependência transitiva, que é o critério da 3FN. Guarde essa distinção: dependência parcial = viola 2FN; dependência transitiva = viola 3FN.

Alternativa A — ❌ Incorreta

Afirma que a tabela já está na 3FN porque todos os atributos dependem da chave primária. Isso é falso: embora nome_disciplina e id_professor dependam diretamente de id_oferta, os atributos nome_professor e departamento_professor dependem de id_professor, um atributo não chave. Essa dependência transitiva viola a 3FN.

Alternativa B — ✅ Correta ⟵ GABARITO

A tabela viola a 3FN devido à existência de dependência transitiva entre atributos não chave. Exatamente: id_oferta → id_professor e id_professor → nome_professor, departamento_professor configuram uma dependência transitiva, pois nome_professor e departamento_professor dependem de id_professor, que não é chave. Para atingir a 3FN, é necessário decompor a tabela.

Alternativa C — ❌ Incorreta

Afirma que a tabela viola a 1FN porque possui múltiplos atributos relacionados ao professor. Isso é incorreto: a 1FN trata da atomicidade dos atributos (valores indivisíveis, sem grupos repetitivos ou multivalorados). Ter vários atributos sobre o professor (id_professor, nome_professor, departamento_professor) não viola a 1FN, pois cada um é atômico. A violação aqui é de dependência transitiva, que diz respeito à 3FN.

Alternativa D — ❌ Incorreta

Afirma que a tabela viola a 2FN porque a chave primária possui mais de um atributo. Isso é duplamente errado: primeiro, a chave primária é id_oferta, que é simples (um único atributo), não composta. Segundo, a 2FN trata de dependência parcial, que só ocorre com chave composta. Como a chave é simples, não há como violar a 2FN. A violação real é de dependência transitiva (3FN).

Alternativa E — ❌ Incorreta

Afirma que a tabela está na 2FN, mas não pode ser transformada para a 3FN. Isso é falso: a tabela está na 2FN (chave simples, sem dependência parcial), mas pode e deve ser transformada para a 3FN, decompondo-a em duas tabelas (DISCIPLINA e PROFESSOR), eliminando a dependência transitiva.

Gabarito: letra B

Link permanente: /questoes/qa433475