Questão FC369477
Com referência à normalização de bancos de dados, considere uma tabela relacional T, com colunas C, H, N, P, na qual as dependências funcionais identificadas são exibidas a seguir.
Linguagem SQL
FGV · 2024
Com referência à normalização de bancos de dados, considere uma tabela relacional T, com colunas C, H, N, P, na qual as dependências funcionais identificadas são exibidas a seguir.
C-> H
C -> P
C -> N
P -> C
O comando SQL utilizado na criação dessa tabela é exibido a seguir.
create table T ( C int not null unique,
H int null unique,
P int null unique,
N 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.
- C, H, P -> N
- H -> P
- N -> P
- N -> H
- P, H -> C
Mostrar resposta e comentário
Gabarito
B
Comentário do professor
A dependência proposta, H -> P, torna H uma chave e, assim, resolve a exigência da forma normal Boyce‑Codd (BCNF).
Com H -> P e a já dada P -> C, obtemos, pelo fechamento, \(H^+ = \{H,P,C,N\}\): de H vem P, de P vem C e de C vêm H, P e N. Portanto H determina todas as colunas e é uma superchave.
Em BCNF toda dependência funcional não trivial \(X \to Y\) exige que \(X\) seja superchave. Após adicionar H -> P, as dependências C -> ... e P -> C têm lados-esquerdo que são superchaves (C e P determinam todos os atributos) e H também passa a ser superchave.
Logo, a inclusão de H -> P garante que todas as FDs tenham à esquerda uma superchave, cumprindo a condição de BCNF para o esquema fornecido.
Conteúdo do catálogo FC Concursos · Atualizado em