Questão nº 39

Questão de Tecnologia da Informação · FGV TJ-MS 2024 (nº 39)

FGV2024Técnico de Nível Superior - Analista de Banco de DadosTecnologia da Informação
Gabarito: Cver comentário ↓

João está encarregado de projetar um banco de dados PostgreSQL para gerenciar informações de cursos universitários, segundo o modelo lógico simplificado:

Figura da questão de Tecnologia da Informação

Para assegurar a unicidade dos dados, João deverá garantir que cada "Aluno" possa realizar a "Matricula" em uma "Disciplina" apenas uma vez.
Para tanto, ele deverá evitar a duplicidade de matrículas e criar a restrição de integridade:

Resposta comentada

Gabarito Alternativa C

Restrições de integridade são regras que garantem que os dados no banco sejam válidos e consistentes. Uma chave única (unique key) é uma restrição que assegura que todos os valores em uma coluna ou conjunto de colunas sejam diferentes, impedindo que duas linhas tenham a mesma combinação de valores.

  • (A) Incorreta: Uma chave única em IDMatricula garante que cada registro de matrícula tenha um identificador único, mas não impede que um mesmo aluno se matricule várias vezes na mesma disciplina, desde que cada matrícula receba um IDMatricula diferente.
  • (B) Incorreta: Uma chave primária em IDMatricula tem a mesma função de uma chave única para IDMatricula (além de não permitir valores nulos), garantindo a unicidade de cada registro, mas não a unicidade da combinação (Aluno, Disciplina).
  • (C) Correta: Ao criar uma chave única para a combinação dos atributos IDAluno e IDDisciplina na tabela Matricula, o banco de dados impedirá a inserção de qualquer nova linha onde essa combinação já exista. Isso garante que um aluno só possa se matricular em uma disciplina uma única vez.
  • (D) Incorreta: Uma chave estrangeira (FOREIGN KEY) serve para garantir a integridade referencial, ou seja, que os valores de IDAluno e IDDisciplina na tabela Matricula existam nas tabelas Aluno e Disciplina, respectivamente. Ela não impede a duplicidade da combinação (IDAluno, IDDisciplina) dentro da própria tabela Matricula. A armadilha aqui é confundir a necessidade de referenciar outras tabelas (que é feita por chaves estrangeiras individuais) com a necessidade de garantir a unicidade de uma combinação de atributos na tabela atual.
  • (E) Incorreta: Uma chave primária composta por (IDMatricula, IDAluno, IDDisciplina) seria redundante e não resolveria o problema. Se IDMatricula já é único (como geralmente é), a combinação com outros campos sempre será única. Isso permitiria que um aluno se matriculasse várias vezes na mesma disciplina, contanto que cada matrícula recebesse um IDMatricula diferente.

Fonte: FGV TJ-MS 2024 Técnico de Nível Superior - Analista de Banco de Dados (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