Middle+
Quais são os tipos de ligações entre as tabelas?
sobes.tech IA
Resposta da IA
Existem três tipos principais de relações entre tabelas em bases de dados relacionais:
-
Um para um (1:1) — cada registo na primeira tabela corresponde exatamente a um registo na segunda tabela e vice-versa. Utilizado quando os dados estão logicamente separados, mas ligados diretamente.
-
Um para muitos (1:N) — um registo na primeira tabela corresponde a múltiplos registos na segunda. Por exemplo, um cliente pode ter muitos pedidos.
-
Muitos para muitos (M:N) — registos na primeira tabela estão relacionados com múltiplos registos na segunda e vice-versa. Para implementar, geralmente cria-se uma tabela intermédia de ligação com chaves externas para ambas as tabelas.
Exemplo de relação muitos para muitos:
-- Tabela de estudantes
CREATE TABLE Students (
StudentID INT PRIMARY KEY,
Name VARCHAR(100)
);
-- Tabela de cursos
CREATE TABLE Courses (
CourseID INT PRIMARY KEY,
Title VARCHAR(100)
);
-- Tabela de ligação entre estudantes e cursos
CREATE TABLE StudentCourses (
StudentID INT,
CourseID INT,
PRIMARY KEY (StudentID, CourseID),
FOREIGN KEY (StudentID) REFERENCES Students(StudentID),
FOREIGN KEY (CourseID) REFERENCES Courses(CourseID)
);