Sobes.tech
Junior — Middle

როგორ განვახორციელოთ 'სხვადასხვა რაოდენობის' კავშირი MySQL მონაცემთა ბაზაში?

sobes.tech AI

პასუხი AI-სგან

MySQL-შე "ბევრიდან ბევრამდე" ურთიერთობა რეალიზდება დამატებითი კავშირის ცხრილის (join table) შექმნით, რომელიც შეიცავს ორივე დაკავშირებული ცხრილის საგარეო გასაღებს.

მაგალითად, არსებობს ორი ცხრილი: students და courses. ერთი სტუდენტი შეიძლება იყოს ჩაწერილი რამდენიმე კურსზე, და ერთი კურსი შეიძლება მოიცავდეს ბევრ სტუდენტს.

  1. შევქმნათ ცხრილები:
CREATE TABLE students (
  student_id INT PRIMARY KEY,
  name VARCHAR(100)
);

CREATE TABLE courses (
  course_id INT PRIMARY KEY,
  title VARCHAR(100)
);
  1. შევქმნათ კავშირის ცხრილი:
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)
);

ეს ცხრილი ინახავს იდენტიფიკატორების წყვილებს, რომლებიც აკავშირებენ სტუდენტებს და კურსებს. ამ გზით, "ბევრიდან ბევრამდე" ურთიერთობა რეალიზდება საშუალო ცხრილის მეშვეობით.