Imagem de fundo

No modelo Entidade-Relacionamento, há as entidades Aluno e Curso relacionadas por Matrí...

No modelo Entidade-Relacionamento, há as entidades Aluno e Curso relacionadas por Matrícula. Cada aluno pode se matricular em vários cursos e cada curso pode ter vários alunos (N:N). Na conversão para o modelo relacional, qual é a forma correta e usual de representar esse relacionamento?


A

Acrescentar, na tabela Aluno, colunas para os cursos (ou um campo que armazene todos os cursos do aluno), evitando junções frequentes.


B

Criar uma tabela de junção contendo as chaves estrangeiras de Aluno e Curso; normalmente a chave primária é composta (AlunoId, CursoId) e a tabela pode ter atributos próprios da matrícula.


C

Representar Matrícula como herança (supertipo Pessoa e subtipos), tratando a associação Aluno-Curso como especialização.


D

Usar, na tabela Aluno, um campo multivalorado (lista/JSON de IDs de curso) para manter “em linha” as matrículas e reduzir joins.


E

“Normalizar” removendo o relacionamento e mantendo apenas Aluno e Curso, delegando o vínculo a triggers e views calculadas.