Sobes.tech
Junior — Middle

Como implementar a relação 'muitos para muitos' numa base de dados MySQL?

sobes.tech IA

Resposta da IA

A relação "muitos para muitos" no MySQL é implementada através da criação de uma tabela adicional de ligação (tabela de join), que contém chaves estrangeiras para ambas as tabelas relacionadas.

Por exemplo, existem duas tabelas: students e courses. Um estudante pode estar inscrito em vários cursos, e um curso pode incluir muitos estudantes.

  1. Criamos as tabelas:
CREATE TABLE students (
  student_id INT PRIMARY KEY,
  name VARCHAR(100)
);

CREATE TABLE courses (
  course_id INT PRIMARY KEY,
  title VARCHAR(100)
);
  1. Criamos a tabela de ligação:
CREATE TABLE student_courses (
  student_id INT,
  course_id INT,
  PRIMARY KEY (student_id, course_id),
  FOREIGN KEY (student_id) REFERENCES students(student_id),
  FOREIGN KEY (course_id) REFERENCES courses(course_id)
);

Esta tabela armazena pares de identificadores que ligam estudantes e cursos. Assim, a relação muitos para muitos é implementada através de uma tabela intermediária.