Questão nº 64
Questão de Economia · FGV TCE-PA 2024 (nº 64)
Considere o Sistema de Concursos de uma empresa hipotética que adota um Sistema de Gerenciamento de Banco de Dados (SGDB) relacional.
A primeira tabela construída no banco foi Tabela_Candidato, que possui os seguintes campos:
candidato_ID;
candidato_Nome;
candidato_CPF.
A segunda tabela construída foi a Tabela_Concurso, que possui os seguintes campos:
concurso_ID;
candidato_ID;
concurso_Nome;
concurso_Cargo.
No contexto dos bancos de dados relacionais, é correto afirmar que
- Ao campo candidato_ID é uma chave estrangeira na Tabela_Candidato.
- Bo campo candidato_ID é uma chave primária na Tabela_Concurso.
- Ca Tabela_Candidato está incompleta, haja vista que não possui informação do concurso que o candidato pode fazer.
- Dda forma como o banco de dados foi concebido, só é possível lançar um concurso por candidato.
- Ea inserção da chave estrangeira candidato_ID na tabela Tabela_Concurso permite o lançamento de um candidato em vários concursos. (alternativa correta)
Resposta comentada
Gabarito Alternativa E
Em um banco de dados relacional, as informações são organizadas em tabelas (como planilhas). Cada tabela tem campos (colunas) e registros (linhas). Uma chave primária (PK) é um campo que identifica de forma única cada registro em uma tabela, como um RG. Uma chave estrangeira (FK) é um campo em uma tabela que se refere à chave primária de outra tabela, criando uma ligação entre elas.
- (A) Incorreta: O campo
candidato_IDnaTabela_Candidatoé a chave primária dessa tabela, pois identifica cada candidato de forma única. Uma chave estrangeira sempre aponta para outra tabela. - (B) Incorreta: O campo
candidato_IDnaTabela_Concursoé uma chave estrangeira, não a chave primária. A chave primária daTabela_Concursoéconcurso_ID, que identifica cada concurso de forma única. Secandidato_IDfosse a PK deTabela_Concurso, um candidato só poderia ter um registro nessa tabela, ou seja, só poderia fazer um concurso. - (C) Incorreta: A
Tabela_Candidatotem a função de armazenar os dados do candidato. A informação sobre qual concurso o candidato faz é armazenada naTabela_Concurso, que se relaciona com aTabela_Candidatoatravés docandidato_ID. Essa separação é um princípio fundamental do design de bancos de dados relacionais e não indica incompletude. - (D) Incorreta: Armadilha da banca: Esta alternativa tenta induzir o erro de que a presença de
candidato_IDnaTabela_Concursorestringe o candidato a um único concurso. No entanto, comoconcurso_IDé a chave primária daTabela_Concurso(identificando cada concurso de forma única), ocandidato_ID(que é uma chave estrangeira) pode aparecer várias vezes naTabela_Concurso, cada vez associado a umconcurso_IDdiferente. Isso significa que um candidato pode participar de múltiplos concursos. - (E) Correta: A inserção do campo
candidato_IDcomo chave estrangeira naTabela_Concurso(referenciando aTabela_Candidato) permite que um mesmocandidato_IDapareça em múltiplos registros daTabela_Concurso(cada um com umconcurso_IDdiferente). Isso estabelece uma relação de "um para muitos", onde um candidato pode estar associado a vários concursos.
Fonte: FGV TCE-PA 2024 Auditor de Controle Externo - Planejamento - Economia (Caderno Tipo 1). Reproduzida para fins de estudo.