Questão nº 60

Questão de Tecnologia da Informação · FGV STN 2024 (nº 60)

FGV2024Auditor Federal de Finanças e Controle - Tecnologia da Informação (Transformação Digital)Tecnologia da Informação
Gabarito: Bver comentário ↓

Com referência à normalização de bancos de dados, considere uma tabela relacional T, com colunas A, B, C, D, E, na qual as dependências funcionais identificadas são exibidas a seguir.

```
A -> B
B -> A
A -> C
B -> D
B -> E
D -> B
```

O comando SQL utilizado na criação dessa tabela é exibido a seguir.

```sql
create table T (
A int not null unique,
B int not null unique,
C int not null unique,
D int not null unique,
E int not null )
```

Assinale a dependência funcional adicional necessária para que o esquema acima esteja de acordo com a forma normal Boyce-Codd.

Resposta comentada

Gabarito Alternativa B

A Forma Normal Boyce-Codd (FNBC) é um nível de normalização que garante que toda dependência funcional não trivial em uma tabela seja causada por uma superchave. Uma superchave é um conjunto de colunas que identifica unicamente uma linha. Em termos simples, para estar em FNBC, qualquer coisa que determine outra coluna (uma dependência funcional) deve ser determinada por um conjunto de colunas que já seja uma chave candidata (a menor superchave possível) ou uma superchave.

  • (A) Incorreta: A dependência A,B,C,DEA, B, C, D \rightarrow E é trivial, pois o lado esquerdo (A,B,C,DA, B, C, D) é uma superchave (já que AA e BB são únicos e determinam todas as outras colunas, e CC e DD também são únicos). Dependências triviais não violam a FNBC.
  • (B) Correta: A dependência CDC \rightarrow D viola a FNBC porque CC não é uma superchave da tabela TT. Para que a tabela estivesse em FNBC, precisaríamos garantir que qualquer dependência funcional não trivial fosse determinada por uma superchave. A dependência CDC \rightarrow D implica que CC determina DD. No entanto, CC sozinho não determina todas as outras colunas (A,B,D,EA, B, D, E), portanto, não é uma superchave. A adição de CDC \rightarrow D como uma dependência funcional adicional (e não uma consequência das existentes) é o que a questão pede para atingir a FNBC, pois a estrutura atual não garante que CC determine DD de forma que CC seja uma superchave.
  • (C) Incorreta: A dependência CEC \rightarrow E também violaria a FNBC pelo mesmo motivo de CDC \rightarrow D, pois CC não é uma superchave. No entanto, a questão pede a dependência adicional necessária. A dependência CDC \rightarrow D é a que, quando considerada junto com as outras, revela a violação que precisa ser tratada para atingir a FNBC.
  • (D) Incorreta: A dependência EAE \rightarrow A violaria a FNBC porque EE não é uma superchave. Contudo, a dependência BAB \rightarrow A já existe e BB é único, o que implica que EE não pode determinar AA de forma independente das dependências já presentes que tornam BB uma chave.
  • E) Incorreta: A dependência EA,B,C,DE \rightarrow A, B, C, D é uma dependência parcial, pois o lado esquerdo (EE) não é uma superchave. No entanto, a questão pede a dependência adicional necessária para a FNBC. A dependência CDC \rightarrow D é a que, quando adicionada ao conjunto de dependências existentes, revela uma violação específica da FNBC que precisa ser resolvida. A armadilha aqui é que EE não é uma superchave, mas a dependência CDC \rightarrow D é a que, dado o contexto das outras dependências e a estrutura da tabela, é a mais relevante para a questão de atingir a FNBC.

Fonte: FGV STN 2024 Auditor Federal de Finanças e Controle - Tecnologia da Informação (Transformação Digital) (Caderno Tipo 1). Reproduzida para fins de estudo.

Continue estudando

Estudar é izi

Pratique milhares de questões como esta, de graça, com explicação e gamificação no Quizinho.

Estudar de graça no Quizinho