SóProvas


ID
61213
Banca
CESPE / CEBRASPE
Órgão
STF
Ano
2008
Provas
Disciplina
Banco de Dados
Assuntos

O armazenamento e a recuperação de grandes quantidades de dados é um trabalho importante e muito explorado em um sistema
gerenciador de banco de dados (SGBD). Com relação aos conceitos que envolvem esse sistema, julgue os itens que se seguem.

Chaves estrangeiras podem ser definidas como sendo um conjunto de atributos pertencentes a um esquema de relação que constituem chaves primárias ou candidatas em outros esquemas independentes.

Alternativas
Comentários
  • A definição de Chave Estrangeira em uso de banco de dados se refere ao tipo de relacionamento entre as tabelas de dados do banco de dados. Ela é chamada quando há o relacionamento entre duas tabelas.Sempre em chave estrangeira vai haver relacionamentos entre tabelas, por exemplo, se uma tabela que tem uma chave primária ou candidata de outra tabela.
  • Porque a questão está certa?Acredito que a chave estrangeira DEVE ser a chave primária em outros esquemas. Não pode ser uma chave candidata sem ser chave primária.
  • Também tive o mesmo raciocínio da Vanessa
  • Procurando essa resposta encontrei a seguinte passagem no livro do Date:

    "Informalmente, uma chave estrangeira é um conjunto de atributos de uma RelVar R2 cujos valores devem obrigatoriamente corresponder a valores de alguma chave candidata de alguma RelVar R1."

    A partir disso, considerando que toda chave primária é por definição uma chave candidata, a questão realmente está correta.

    *Para quem não está acostumado com o termo, RelVar corresponde ao valor de uma relação em determinado tempo. Date diferencia uma relação propriamente dita do valor assumido por uma variável através da manipulação de uma relação básica. Mais detalhes no capítulo 3 do livro.

  •  Completando o comentário de Benjamin abaixo, de fato é possível definir uma chave estrangeira para um campo que seja chave candidata. Um campo de uma tabela A pode referenciar um campo UNIQUE de uma tabela B. Veja como não precisa ser chave primária, basta ser unique.

    Lembrando também que unique é exatamente o conceito de chave candidata.

  • Exemplificando o que o Rodrigo falou, podemos ter numa tabela de clientes os campos ID (chave) primária e o campo CPF (UNIQUE). Tanto a chave primária ID quanto o CPF podem ser chaves estrangeiras de uma venda, por exemplo. Nesse caso, o CPF é uma chave candidata.

  • Uma chave candidata é CANDIDATA a ser uma chave primaria (sim.. o raciocínio é esse mesmo. Simples assim.). LOGO, uma chave primaria necessariamente é uma chave candidata. Porém o contrário não se aplica!

    Ch.Primária-->Ch. Candidata
    Ch.Candidata-->Ch.Primária
     0-------a--aa
    Como os 2 colegas falaram acima, uma tabela com um campo ID (que é a Chave Primaria da tabela) e um campo CPF, o campo CPF NATURALMENTE é uma chave "CANDIDATA a ser PRIMARIA", pois é um campo único.

    Não existe CPF repetido (ou pelo menos não deveria).

     

  • A parte "que constituem chaves primárias ou candidatas em outros esquemas independentes" não estaria incorreta? Pois a chave estrangeira também pode referenciar uma chave primária ou candidata na própria tabela.

  • Ué.... nas questões recentes o CESPE impõe a necessidade de ser chave primária e ponto. Vai entender...

  • TODA CHAVE PRIMÁRIA É UMA CHAVE CANDIDATA

    MAS NEM TODA CHAVE CANDIDATA É UM CHAVE PRIMÁRIA

  • Chaves Estrangeiras FK podem ser Chaves Primárias PK ou Candidatas.

  • Acredito que o que torna a questão certa é o fato de que toda chave primária é chave candidata

  • não dá pra ter acesso a outro schema que não for apontado pela própria aplicação, a chave primária não dá poderes para deixar a aplicação ficar pulando de schema a schema, isso não tem nada haver com chave primária.