O arquiteto de dados Gustavo precisa implementar o modelo l...

Próximas questões
Com base no mesmo assunto
Q3878703 Banco de Dados
O arquiteto de dados Gustavo precisa implementar o modelo lógico do relacionamento entre as entidades Processo e Parte de um sistema do TJRJ. Cada Processo pode ter uma ou mais Parte, e cada Parte pode estar em um ou mais Processo. O modelo lógico que Gustavo deve implementar, garantindo a integridade dos relacionamentos, é:
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Gabarito: E

Fundamento decisivo: O enunciado descreve um relacionamento muitos-para-muitos entre Processo e Parte; nesse caso, a implementação lógica exigida é uma tabela associativa com as chaves das duas entidades, o que torna a alternativa E a adequada.

Tema central: Relacionamento muitos-para-muitos
Análise das alternativas
A
Errada
A alternativa traz apenas a tabela associativa com chave primária composta, mas não apresenta as tabelas Processo e Parte nem explicita as chaves estrangeiras. Assim, frente às demais opções, o modelo fica incompleto para representar o relacionamento entre as entidades do sistema.
B
Errada
A alternativa tenta resolver o relacionamento colocando chaves de uma entidade dentro da outra. Esse arranjo não implementa corretamente um relacionamento muitos-para-muitos, porque N:N não se resolve com referências diretas recíprocas nas tabelas principais.
C
Errada
A alternativa acerta ao criar uma tabela associativa, mas define apenas um ID próprio como chave primária e não explicita chave primária composta nem outra restrição de unicidade sobre (ID_Processo, ID_Parte). Assim, não fica garantido que o mesmo vínculo entre uma Parte e um Processo não será duplicado.
D
Errada
A alternativa repete o erro estrutural de inserir chaves cruzadas nas próprias entidades, sem criar a tabela intermediária exigida para um relacionamento muitos-para-muitos. Falta a tabela associativa necessária para implementar o N:N no modelo lógico.
E
Certa
A alternativa E aplica o critério correto de implementação de um relacionamento N:N no modelo lógico: mantém Processo e Parte como entidades próprias e cria uma tabela associativa Processo_Parte. Nessa tabela, ID_Processo e ID_Parte aparecem como chaves estrangeiras, o que preserva a integridade referencial, e a chave primária composta por (ID_Processo, ID_Parte) garante a unicidade do vínculo, impedindo a repetição do mesmo par Processo-Parte. Esse é exatamente o procedimento mínimo adequado cobrado na questão.
Pegadinha da questão
Confundir relacionamento N:N com chaves diretas nas tabelas principais ou aceitar tabela de junção sem garantir unicidade do par de chaves estrangeiras.
Dica para questões semelhantes
  • Se o enunciado indicar que cada lado pode se relacionar com vários registros do outro, identifique relacionamento N:N.
  • Para N:N no modelo lógico, procure tabela associativa contendo as chaves das duas entidades como FKs.
  • Se a questão cobrar integridade do vínculo, verifique se o par das FKs está protegido contra duplicidade, aqui por PK composta.
  • Não considere suficiente uma tabela de junção isolada se o modelo lógico das entidades principais não estiver adequadamente representado.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

Quando duas entidades possuem um relacionamento muitos-para-muitos, é necessário criar uma tabela intermediária. Essa tabela contém:

  1. Chaves estrangeiras das duas entidades originais, apontando para suas respectivas chaves primárias.
  2. Uma chave primária composta, formada pela combinação dessas duas chaves estrangeiras, garantindo que cada par de registros seja único na tabela.

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo