Questão nº 64

Questão de Análise de Dados · FGV TCU 2021 (nº 64)

FGV2021Auditor Federal de Controle Externo - Área Controle Externo (AUFC-CE)Análise de Dados
Gabarito: Aver comentário ↓

ATENÇÃO!

Para as duas questões a seguir, considere uma tabela relacional R, com atributos W, X, Y, Z, e o conjunto de dependências funcionais identificadas para esses atributos.

X → Y
X → Z
Z → X
Z → W


Com referência à tabela R, definida anteriormente, considere o esboço de um comando SQL para a criação da tabela.

create table R (
        X int not null,
        Y int not null,
        W int not null,
        Z int not null,
constraint …
)

De acordo com as dependências funcionais de R, e com a Forma Normal de Boyce-Codd, a definição correta das chaves (por meio de constraints) aplicáveis e necessárias para essa tabela deveria ser:

Resposta comentada

Gabarito Alternativa A

Uma chave candidata é um conjunto mínimo de atributos que identifica de forma única cada linha em uma tabela. Um UNIQUE constraint (restrição de unicidade) em SQL é usado para garantir que todos os valores em uma coluna ou um grupo de colunas sejam únicos, servindo para identificar chaves candidatas.

Vamos analisar as dependências funcionais (DFs) dadas para a tabela R(W, X, Y, Z):

  1. X → Y
  2. X → Z
  3. Z → X
  4. Z → W

Para encontrar as chaves candidatas, precisamos encontrar os atributos que, sozinhos ou em conjunto, conseguem determinar todos os outros atributos da tabela.

  • Verificando X:

    • X → Y (dado)
    • X → Z (dado)
    • Como X → Z e Z → W, por transitividade temos X → W.
    • Portanto, X determina {X, Y, Z, W}.
    • Como X é um único atributo, ele é minimal.
    • Conclusão: X é uma chave candidata.
  • Verificando Z:

    • Z → X (dado)
    • Z → W (dado)
    • Como Z → X e X → Y, por transitividade temos Z → Y.
    • Portanto, Z determina {Z, X, W, Y}.
    • Como Z é um único atributo, ele é minimal.
    • Conclusão: Z é uma chave candidata.

Como tanto X quanto Z são chaves candidatas, para que a tabela esteja em uma forma normal adequada (como BCNF, que exige que todo determinante seja uma superchave, ou seja, contenha uma chave candidata), e para que o banco de dados enforce a unicidade dessas chaves, ambas precisam ter restrições de unicidade.

(A) Correta: constraint c1 unique (X) e constraint c2 unique (Z). Esta alternativa define corretamente que tanto X quanto Z são chaves candidatas e, portanto, devem ser únicos na tabela. Ambas as restrições são aplicáveis e necessárias para garantir a integridade dos dados de acordo com as dependências funcionais.
(B) Incorreta: constraint c1 unique (X, Z). Esta restrição indica que a combinação de X e Z é única. Embora seja verdade que (X, Z) é única (já que X sozinho é único e Z sozinho é único), esta restrição não captura o fato de que X sozinho é uma chave candidata e Z sozinho é outra chave candidata. A armadilha aqui é que, se X já é único e Z já é único, a combinação (X, Z) obviamente também será única, mas a restrição unique (X, Z) não expressa que X e Z são chaves candidatas individuais. A questão pede as chaves aplicáveis e necessárias, e as chaves são X e Z, não (X,Z) como uma única chave.
(C) Incorreta: constraint c1 unique (X, Y, W). Esta restrição não representa uma chave candidata. X sozinho já é uma chave candidata; adicionar Y e W a ela torna-a uma superchave, mas não uma chave candidata minimal. Além disso, ignora completamente Z como chave candidata.
(D) Incorreta: constraint c1 unique (X, Y, Z). Similar à alternativa C, esta restrição não representa uma chave candidata minimal. X sozinho já é uma chave candidata; adicionar Y e Z torna-a uma superchave, mas não uma chave candidata minimal.
(E) Incorreta: constraint c1 unique (X), constraint c2 unique (Y), constraint c3 unique (Z). Embora unique (X) e unique (Z) estejam corretas, unique (Y) está incorreta. Y não é uma chave candidata; X determina Y, mas Y não determina X nem qualquer outro atributo para ser uma chave. Portanto, Y pode ter valores duplicados.

Fonte: FGV TCU 2021 Auditor Federal de Controle Externo - Área Controle Externo (AUFC-CE) (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