Sobes.tech
Middle

Егер екі кесте көпке-көпке қатынаста болса, оны қалай жүзеге асырады?

sobes.tech AI

AI-дан жауап

Екі кесте арасындағы көптен-көпке қатынас ортақ кесте (көбінесе байланыстырушы немесе junction кестесі деп аталады) арқылы жүзеге асырылады. Бұл кесте екі бастапқы кестенің негізгі кілттеріне сілтеме жасайтын сыртқы кілттерді қамтиды. Осылайша, бірінші кестедегі әр жазба екінші кестедегі бірнеше жазбалармен байланыса алады, және керісінше.

Мысал:

Students және Courses кестелері көптен-көпке қатынаста, себебі бір студент бірнеше курсқа қатыса алады, ал бір курс бірнеше студентті қамтиды.

Байланысты орнату үшін StudentCourses ортақ кестесін құрамыз, оның өрістері:

  • student_id (Students кестесіне сыртқы кілт)
  • course_id (Courses кестесіне сыртқы кілт)
CREATE TABLE StudentCourses (
  student_id INT,
  course_id INT,
  PRIMARY KEY (student_id, course_id),
  FOREIGN KEY (student_id) REFERENCES Students(id),
  FOREIGN KEY (course_id) REFERENCES Courses(id)
);

Осылайша, байланыс осы кесте арқылы жүзеге асырылады, ол байланысқан жазбалар жұптарын сақтайды.