Apabila mereka bentuk jadual pangkalan data, adalah penting untuk memahami cara melaksanakan pelbagai jenis perhubungan antara entiti. Artikel ini menyelidiki konsep dan teknik untuk melaksanakan perhubungan satu-dengan-satu, satu-ke-banyak, dan banyak-ke-banyak.
Dalam perhubungan satu dengan satu, baris dalam satu jadual secara unik berkaitan dengan baris dalam jadual lain. Untuk melaksanakan perhubungan ini, buat lajur kunci asing dalam jadual yang mewakili bahagian "banyak" yang merujuk lajur kunci utama jadual yang mewakili bahagian "satu". Selain itu, kekangan unik dikuatkuasakan pada lajur kunci asing untuk mengelakkan perhubungan pendua.
<code>学生表:学生ID,姓名,地址ID 地址表:地址ID,地址,城市,邮政编码,学生ID</code>
Dalam perhubungan satu dengan banyak, satu baris dalam satu jadual boleh dikaitkan dengan berbilang baris dalam jadual lain. Untuk melakukan ini, masukkan lajur kunci asing dalam jadual yang mewakili bahagian "banyak" yang merujuk lajur kunci utama jadual yang mewakili bahagian "satu".
<code>教师表:教师ID,姓名 课程表:课程ID,课程名称,教师ID</code>
Dalam perhubungan banyak-ke-banyak, berbilang baris dalam satu jadual boleh dikaitkan dengan berbilang baris dalam jadual lain. Untuk mencapai matlamat ini, buat jadual gabungan dengan dua lajur kunci asing, satu merujuk setiap kunci utama jadual berkaitan.
<code>学生表:学生ID,姓名 课程表:课程ID,名称,教师ID 学生课程表:课程ID,学生ID</code>
Untuk mendapatkan semula data berkaitan dengan cekap, lakukan cantuman antara jadual berdasarkan perhubungan utama asing:
<code>-- 获取特定课程中的学生: SELECT s.student_id, 姓名 FROM 学生课程表 sc INNER JOIN 学生表 s ON s.student_id = sc.student_id WHERE sc.class_id = X -- 获取特定学生的课程: SELECT c.class_id, 名称 FROM 学生课程表 sc INNER JOIN 课程表 c ON c.class_id = sc.class_id WHERE sc.student_id = Y</code>
Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Hubungan Satu-dengan-Satu, Satu-ke-Ramai, dan Banyak-ke-Banyak dalam Reka Bentuk Pangkalan Data?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!