ການນໍາສະເຫນີການພົວພັນຖານຂໍ້ມູນ

ໄລຍະຖານຂໍ້ມູນ "ການພົວພັນ" ຫຼື "ຄວາມສໍາພັນ" ອະທິບາຍວິທີການທີ່ຂໍ້ມູນໃນຕາຕະລາງຖືກເຊື່ອມຕໍ່.

ຜູ້ມາໃຫມ່ໃນໂລກຂອງຖານຂໍ້ມູນມັກພົບຄວາມແຕກຕ່າງລະຫວ່າງຖານຂໍ້ມູນແລະຕາຕະລາງ. ພວກເຂົາເຫັນຕາຕະລາງຂໍ້ມູນແລະຮັບຮູ້ວ່າຖານຂໍ້ມູນອະນຸຍາດໃຫ້ທ່ານຈັດລະບຽບແລະ ສອບຖາມຂໍ້ມູນ ໃນທາງໃຫມ່, ແຕ່ບໍ່ເຂົ້າໃຈເຖິງຄວາມສໍາຄັນຂອງຄວາມ ສໍາພັນລະຫວ່າງຂໍ້ມູນ ທີ່ໃຫ້ຊື່ວ່າເທກໂນໂລຍີຖານຂໍ້ມູນທີ່ກ່ຽວຂ້ອງ.

Relationships ອະນຸຍາດໃຫ້ທ່ານອະທິບາຍການເຊື່ອມຕໍ່ລະຫວ່າງຖານຂໍ້ມູນທີ່ແຕກຕ່າງກັນໃນແບບທີ່ມີປະສິດທິພາບ. ຫຼັງຈາກນັ້ນ, ການພົວພັນເຫຼົ່ານີ້ສາມາດໄດ້ຮັບການສະຫນັບສະຫນູນຈາກການສອບຖາມໂຕ້ແຍ້ງທີ່ມີປະສິດທິພາບ, ທີ່ເອີ້ນວ່າການເຂົ້າຮ່ວມ.

ປະເພດຂອງການພົວພັນຖານຂໍ້ມູນ

ມີສາມປະເພດທີ່ແຕກຕ່າງກັນຂອງການພົວພັນຖານຂໍ້ມູນ, ແຕ່ລະຊື່ຕາມຈໍານວນແຖວຕາຕະລາງທີ່ອາດຈະມີສ່ວນຮ່ວມໃນສາຍພົວພັນ. ແຕ່ລະປະເພດຄວາມສໍາພັນເຫຼົ່ານີ້ສາມລະຫວ່າງສອງຕາຕະລາງ.

ການພົວພັນການອ້າງອີງຕົນເອງ: ກໍລະນີພິເສດ

ການພົວພັນການອ້າງອີງຕົນເອງເກີດຂຶ້ນເມື່ອມີພຽງແຕ່ຫນຶ່ງຕາຕະລາງທີ່ກ່ຽວຂ້ອງ. ຕົວຢ່າງທົ່ວໄປຫນຶ່ງແມ່ນຕາຕະລາງພະນັກງານທີ່ມີຂໍ້ມູນກ່ຽວກັບຜູ້ຄຸມງານຂອງແຕ່ລະພະນັກງານ. ຜູ້ຄຸມງານແຕ່ລະຄົນແມ່ນພະນັກງານແລະມີຜູ້ຄຸມງານຂອງຕົນເອງ. ໃນກໍລະນີນີ້, ມີການພົວພັນກັບຕົວເອງກັບຫຼາຍໆຄົນ, ແຕ່ລະພະນັກງານແຕ່ລະຄົນມີຜູ້ຄຸມງານແຕ່ຜູ້ຄຸມງານແຕ່ລະຄົນອາດມີຫຼາຍກວ່າຫນຶ່ງຄົນ.

ການສ້າງຄວາມສໍາພັນກັບຄີຕ່າງປະເທດ

ທ່ານສ້າງສາຍພົວພັນລະຫວ່າງຕາຕະລາງໂດຍ ກໍານົດແປ້ນຕ່າງປະເທດ . ຄີນີ້ບອກຖານຂໍ້ມູນທີ່ກ່ຽວຂ້ອງກ່ຽວກັບຕາຕະລາງທີ່ກ່ຽວຂ້ອງ. ໃນຫລາຍໆກໍລະນີ, ຄໍລໍາໃນຕາຕະລາງ A ມີຫຼັກຫຼັກທີ່ຖືກອ້າງອີງຈາກຕາຕະລາງ B.

ພິຈາລະນາອີກເທື່ອຫນຶ່ງຕົວຢ່າງຂອງຕາຕະລາງຄູອາຈານແລະນັກຮຽນ. ຕາຕະລາງຄູອາຈານມີພຽງແຕ່ຊື່, ຊື່, ແລະຄໍລໍາຫຼັກສູດ:

ຄູສອນ
InstructorID Teacher_Name ຫລັກສູດ
001 John Doe ພາສາອັງກິດ
002 Jane Schmoe Math

ຕາຕະລາງນັກຮຽນລວມມີ ID, ຊື່ແລະຄໍລໍາທີ່ສໍາຄັນຕ່າງປະເທດ:

ນັກສຶກສາ
StudentID Student_Name Teacher_FK
0200 Lowell Smith 001
0201 Brian Short 001
0202 Corky Mendez 002
0203 Monica Jones 001

The Teacher_FK column ໃນຕາຕະລາງນັກຮຽນອ້າງອີງໃສ່ ຄ່າທີ່ສໍາຄັນ ຂອງ instructor ໃນຕາຕະລາງ Teachers.

ເລື້ອຍໆ, ຜູ້ອອກແບບຖານຂໍ້ມູນຈະໃຊ້ "PK" ຫຼື "FK" ໃນຊື່ຄໍລໍາເພື່ອໃຫ້ສາມາດລະບຸຫຼັກການຫລັກຫຼືຄໍລໍາສໍາຄັນຕ່າງປະເທດ.

ໃຫ້ສັງເກດວ່າຕາຕະລາງສອງເຫຼົ່ານີ້ສະແດງໃຫ້ເຫັນເຖິງຄວາມສໍາພັນລະຫວ່າງຄູກັບນັກຮຽນ.

ການພົວພັນແລະການເຊື່ອມໂຍງຄວາມນັບຖື

ເມື່ອທ່ານໄດ້ເພີ່ມແປ້ນຕ່າງປະເທດໄປຫາຕາຕະລາງ, ທ່ານກໍ່ສາມາດສ້າງຂໍ້ຈໍາກັດຖານຂໍ້ມູນທີ່ບັງຄັບໃຊ້ການ ເຊື່ອມໂຍງ ລະຫວ່າງສອງຕາຕະລາງ. ນີ້ຈະຮັບປະກັນວ່າສາຍພົວພັນລະຫວ່າງຕາຕະລາງຍັງສອດຄ່ອງກັນ. ໃນເວລາຫນຶ່ງຕາຕະລາງທີ່ມີກຸນແຈຕ່າງປະເທດກັບຕາຕະລາງອື່ນ, ແນວຄວາມຄິດຂອງຄວາມສົມບູນແບບອ້າງອີງໄດ້ກ່າວວ່າຄ່າທີ່ສໍາຄັນຂອງຕ່າງປະເທດໃນຕາຕະລາງ B ຕ້ອງອ້າງອີງໃສ່ບັນຊີທີ່ມີຢູ່ໃນຕາຕະລາງ A.

ການປະຕິບັດການພົວພັນ

ຂຶ້ນຢູ່ກັບຖານຂໍ້ມູນຂອງທ່ານ, ທ່ານປະຕິບັດການພົວພັນລະຫວ່າງຕາຕະລາງໃນທາງທີ່ແຕກຕ່າງກັນ. Microsoft Access ສະຫນອງຕົວຊ່ວຍສ້າງທີ່ຊ່ວຍໃຫ້ທ່ານສາມາດເຊື່ອມຕໍ່ຕາຕະລາງແລະປະຕິບັດຕາມຄວາມສົມບູນແບບອ້າງອີງ.

ຖ້າທ່ານຂຽນ SQL ໂດຍກົງ, ຄັ້ງທໍາອິດທ່ານຈະສ້າງຄູສອນຕາຕະລາງ, ປະກາດຄໍລໍາ ID ເປັນຫລັກຫຼັກ:

CREATE TABLE Teachers (

InstructorID INT AUTO_INCREMENT KEY PRIMARY,
Teacher_Name VARCHAR (100),
ຫລັກສູດ VARCHAR (100)
)

ເມື່ອທ່ານສ້າງຕາຕະລາງນັກຮຽນ, ທ່ານປະກາດຄໍລໍາ Teacher_FK ເປັນຫຼັກຕ່າງປະເທດທີ່ອ້າງອີງໃສ່ຄໍລໍາ InstructorID ໃນຕາຕະລາງຄູອາຈານ:

CREATE TABLE Students (
StudentID INT AUTO_INCREMENT PRIMARY KEY,
Student_Name VARCHAR (100), Teacher_FK INT,
ຫລັກສູດຕ່າງປະເທດ (Teacher_FK) ການອ້າງອິງຄູ (InstructorID))
)

ການນໍາໃຊ້ການພົວພັນເພື່ອເຂົ້າຮ່ວມໃນຕາຕະລາງ

ເມື່ອທ່ານໄດ້ສ້າງສາຍພົວພັນຫນຶ່ງຫຼືຫຼາຍໃນຖານຂໍ້ມູນຂອງທ່ານ, ທ່ານສາມາດໃຊ້ອໍານາດຂອງຕົນໂດຍໃຊ້ SQL JOIN queries ເພື່ອສົມທົບຂໍ້ມູນຈາກຕາຕະລາງຫຼາຍ. ປະເພດທີ່ພົບເລື້ອຍທີ່ສຸດແມ່ນ SQL INNER JOIN, ຫຼືເຂົ້າຮ່ວມງ່າຍດາຍ. ປະເພດຂອງການເຂົ້າຮ່ວມນີ້ຈະສົ່ງຄືນການບັນທຶກທັງຫມົດທີ່ຕອບສະຫນອງເງື່ອນໄຂການເຂົ້າຮ່ວມຈາກຕາຕະລາງຫຼາຍ. ສໍາລັບຕົວຢ່າງ, ເງື່ອນໄຂນີ້ຈະສົ່ງຄືນ Student_Name, Teacher_Name, ແລະ Course ທີ່ຄີຕ່າງປະເທດຢູ່ໃນຕາຕະລາງນັກຮຽນທີ່ກົງກັບຫຼັກຫຼັກໃນຕາຕະລາງ Teachers:

SELECT StudentsStudent_Name, TeachersTeacher_Name, TeachersCourse
ຈາກນັກຮຽນ
INNER JOIN Teachers
ON StudentsTeacher_FK = TeachersInstructorID

ຄໍາສັ່ງນີ້ຜະລິດບາງສິ່ງບາງຢ່າງໃນຕາຕະລາງດັ່ງນີ້:

ຕາລາງສົ່ງຄືນຈາກຄໍາສັ່ງເຂົ້າຮ່ວມ SQL

Student_NameTeacher_NameCourseLowell SmithJohn DoeEnglishBrian ShortJohn DoeEnglishCorky MendezJane SchmoeMathMonica JonesJohn DoeEnglish