SóProvas


ID
1869244
Banca
FGV
Órgão
CODEBA
Ano
2016
Provas
Disciplina
Banco de Dados
Assuntos

Considere uma tabela T de um banco de dados relacionais, que possui dois atributos de valores numéricos, A1 e A2. Sabe-se que as seguintes dependências funcionais que devem ser observadas nas instâncias dessa tabela são:

 A1 → A2

A2 → A1 

O projetista do banco de dados pretende que seu esquema respeite as formas normais 3FN e BCFN, e analisou três alternativas para a criação da tabela.

I. create table T (A1 int not null, A2 int not null)

II. create table T (A1 int not null, A2 int not null, unique (A1,A2))

III. create table T (A1 int not null, A2 int not null, unique (A1), unique (A2))

Assinale:


Alternativas
Comentários
  • I. create table T (A1 int not null, A2 int not null)
    Nesse caso não temos chave.
    Então não respeita a 3FN pois temos dependência transitiva
    A1 --> A2
    Atributo não chave (A1) determinando outro atributo não chave (A2)

     

    II. create table T (A1 int not null, A2 int not null, unique (A1,A2))
    Nesse caso ele nos apresenta uma chave composta.
    A1 e A2 em conjunto são a chave composta da relação.
    Agora não respeita a 2FN, pois temos dependência parcial
    A1 --> A2
    Atributo não chave (A2) é determinado por parte da chave composta (A1).

     

    III. create table T (A1 int not null, A2 int not null, unique (A1), unique (A2))
    Aqui temos duas chaves candidatas: A1 sozinha e A2 sozinha.
    Respeita a 1FN pois todos atributos são atômicos.
    Respeita a 2FN pois não temos chave composta, então não dá pra ter dependência parcial
    Respeita a 3FN pois não temos dependência transitiva
    Respeita a FNBC pois todo determinante (lado esquerdo) é superchave

    A1 --> A2
    A1 é superchave
    A2 --> A1
    A2 é superchave