Questão de Banco de Dados — Normalização — FCC 2024
Banco de Dados›Normalização
Código
fc147220
Banca
FCC
Órgão
TRT 20
Ano
2024
Cargo
TJ TRT20
Um Técnico do Tribunal do Trabalho está normalizando um modelo de dados até a forma normal BCNF - Boyce-Codd Normal Form que
Aexige que todos os determinantes sejam supechaves .
Bpermite dependências funcionais parciais.
Cé equivalente à 2NF.
Dé menos restritiva que a 3NF.
Eelimina todas os atributos multivalorados.
Revelar gabarito e comentário▾
GabaritoA — exige que todos os determinantes sejam supechaves .
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”.
Forma Normal de Boyce-Codd (BCNF)
Gabarito: letra A. A BCNF exige que todo determinante seja uma superchave — ou seja, toda dependência funcional deve ter como lado esquerdo uma chave candidata (ou superchave). Essa é a definição central da forma normal de Boyce-Codd, que a alternativa A reproduz corretamente.
A normalização é o processo de analisar esquemas de relação com base em dependências funcionais e chaves primárias, com o objetivo de minimizar redundâncias e anomalias de inserção, exclusão e atualização. As formas normais são regras progressivas: cada uma exige o cumprimento da anterior e adiciona uma restrição nova. A BCNF é uma variação mais forte da 3FN — ela foi criada justamente para tratar um caso específico em que uma relação está na 3FN, mas ainda apresenta anomalias: quando um determinante não é chave candidata.
A definição formal: uma relação está na BCNF se, e somente se, estiver na 3FN e todo determinante for chave candidata. Em outras palavras, para toda dependência funcional X → Y, X deve ser uma superchave. Isso elimina qualquer dependência entre atributos não chave, inclusive aquelas que a 3FN não captura (quando o determinante é um atributo não primo, mas que determina parte da chave).
Na prática, a BCNF é mais restritiva que a 3FN: toda relação em BCNF está em 3FN, mas nem toda relação em 3FN está em BCNF. O exemplo clássico é uma relação com chave composta e um atributo não chave que determina parte da chave — isso viola a BCNF, mas não a 3FN.
A pegadinha da banca aqui é justamente a hierarquia das formas normais: muitos candidatos confundem BCNF com 3FN ou acham que ela é menos restritiva. A alternativa correta é a única que descreve com precisão o requisito da BCNF.
Critério
BCNF (Boyce-Codd)
3FN
2FN
Exigência central
Todo determinante deve ser superchave
Todo atributo não chave depende apenas da chave primária completa (sem dependência transitiva)
Todo atributo não chave depende da chave primária completa (sem dependência parcial)
Restrição sobre dependências funcionais
Elimina qualquer DF cujo lado esquerdo não seja superchave
Elimina DFs transitivas (atributo não chave → atributo não chave)
Elimina DFs parciais (atributo não chave → parte da chave composta)
Nível de restrição
Mais restritiva que a 3FN
Mais restritiva que a 2FN
Menos restritiva que a 3FN
Relação de implicação
Toda relação em BCNF está em 3FN e 2FN
Toda relação em 3FN está em 2FN, mas nem toda está em BCNF
Toda relação em 2FN está em 1FN, mas nem toda está em 3FN
Exemplo de violação
Determinante não chave que determina parte da chave
Atributo não chave que determina outro atributo não chave
Atributo não chave que depende de apenas parte da chave composta
Alternativa A — ✅ Correta ⟵ GABARITO
A BCNF exige que todo determinante seja uma superchave. Isso significa que, para qualquer dependência funcional X → Y, X deve conter uma chave candidata. Essa é a definição exata da forma normal de Boyce-Codd, que elimina as dependências funcionais que violam a 3FN. A alternativa está correta.
Alternativa B — ❌ Incorreta
A BCNF não permite dependências funcionais parciais. Pelo contrário, a BCNF exige que todo determinante seja superchave, o que elimina qualquer dependência parcial (quando um atributo não chave depende de apenas parte de uma chave composta). A dependência parcial é o que a 2FN já elimina; a BCNF vai além.
Alternativa C — ❌ Incorreta
A BCNF não é equivalente à 2FN. A BCNF é uma forma normal mais forte que a 3FN, que por sua vez é mais forte que a 2FN. Uma relação em BCNF está automaticamente em 2FN, mas a recíproca não é verdadeira. A equivalência proposta pela alternativa é falsa.
Alternativa D — ❌ Incorreta
A BCNF é mais restritiva que a 3FN, não menos. Toda relação em BCNF está em 3FN, mas existem relações em 3FN que não estão em BCNF (quando há um determinante que não é chave candidata). Portanto, a BCNF impõe uma condição adicional, sendo mais forte.
Alternativa E — ❌ Incorreta
A eliminação de atributos multivalorados é requisito da 1FN (primeira forma normal), não da BCNF. A BCNF trata de dependências funcionais, não de multivaloração. A eliminação de dependências multivaloradas é o foco da 4FN. A alternativa confunde o escopo das formas normais.