Skip to main content

Panimula sa Mga Relasyon sa Database

FileMaker Coaches' Corner - Tip 1 - Relationships - Naming Conventions (Abril 2025)

FileMaker Coaches' Corner - Tip 1 - Relationships - Naming Conventions (Abril 2025)
Anonim

Ang terminong database na "pamanggit" o "relasyon" ay naglalarawan ng paraan na konektado ang data sa mga talahanayan.

Ang mga bagong dating sa mundo ng mga database ay madalas na may isang hard oras na nakikita ang pagkakaiba sa pagitan ng isang database at isang spreadsheet. Nakikita nila ang mga talahanayan ng data at kinikilala na ang mga database ay nagpapahintulot sa iyo na mag-organisa at magtanong ng data sa mga bagong paraan, ngunit hindi maunawaan ang kabuluhan ng mga relasyon sa pagitan ng data na nagbibigay ng pamanggit na teknolohiya ng pangalan nito.

Pinapahintulutan ka ng mga Relasyon na ilarawan ang mga koneksyon sa pagitan ng iba't ibang mga talahanayan ng database sa magagaling na paraan. Ang mga relasyon na ito ay maaaring magamit upang magsagawa ng mga malalakas na mga query sa cross-table, na kilala bilang pagsali.

Mga Uri ng Mga Relasyon sa Database

May tatlong magkakaibang uri ng mga ugnayan sa database, bawat isa ay pinangalanan ayon sa bilang ng mga talahanayan ng talahanayan na maaaring kasangkot sa relasyon. Ang bawat isa sa mga tatlong uri ng relasyon ay umiiral sa pagitan ng dalawang talahanayan.

  • Isa-sa-isang relasyon nangyayari kapag ang bawat entry sa unang talahanayan ay may isa, at isa lamang, katuwang sa pangalawang talahanayan. Ang mga one-to-one na relasyon ay bihirang ginagamit sapagkat ito ay kadalasang mas mahusay upang ilagay lamang ang lahat ng impormasyon sa isang solong mesa. Ginagamit ng ilang mga tagabuo ng database ang kaugnayan na ito sa pamamagitan ng paglikha ng mga talahanayan na naglalaman ng isang subset ng data mula sa isa pang mesa.
  • Isa-sa-maraming mga relasyon ay ang pinaka-karaniwang uri ng relasyon sa database. Ang mga ito ay nangyayari kapag ang bawat talaan sa Table A ay tumutugma sa isa o higit pang mga talaan sa Table B, ngunit ang bawat talaan sa Table B ay tumutugma sa isang talaan lamang sa Table A. Halimbawa, ang relasyon sa pagitan ng isang talahanayan ng Guro at isang mag-aaral na talahanayan sa elementarya Ang database ay malamang na maging isa-sa-maraming relasyon, dahil ang bawat estudyante ay may isang guro lamang, ngunit ang bawat guro ay may maraming mag-aaral. Ang isa-sa-maraming disenyo na ito ay tumutulong na alisin ang doble na data.
  • Maraming-sa-maraming mga relasyon nangyayari kapag ang bawat talaan sa Table A ay tumutugma sa isa o higit pang mga tala sa Table B, at ang bawat talaan sa Table B ay tumutugma sa isa o higit pang mga tala sa Table A. Halimbawa, ang relasyon sa pagitan ng isang Guro at isang Kurso ng talahanayan ay malamang na maraming- sa-maraming dahil ang bawat guro ay maaaring magturo ng higit sa isang kurso, at ang bawat kurso ay maaaring magkaroon ng higit sa isang magtuturo.

Mga Relasyon sa Pag-iisip sa Sarili: Isang Espesyal na Kaso

Ang mga relasyon sa pag-iugnay sa sarili ay nangyayari kapag may isang mesa lamang na kasangkot. Ang isang karaniwang halimbawa ay isang talahanayan ng Mga Empleyado na naglalaman ng impormasyon tungkol sa tagapangasiwa ng bawat empleyado. Ang bawat superbisor ay isa ring empleyado at may sariling superbisor. Sa kasong ito, may isang isa-sa-maraming relasyon sa pagtukoy sa sarili, dahil ang bawat empleyado ay may isang superbisor, ngunit ang bawat superbisor ay maaaring magkaroon ng higit sa isang empleyado.

Paglikha ng mga Relasyon sa Dayuhang Mga Key

Gumawa ka ng mga relasyon sa pagitan ng mga talahanayan sa pamamagitan ng pagtukoy ng isang banyagang susi. Ang susi na ito ay nagsasabi sa pamanggit na database kung paano nauugnay ang mga talahanayan. Sa maraming kaso, ang isang haligi sa Talaan A ay naglalaman ng pangunahing mga susi na isinangguni mula sa Table B.

Isaalang-alang muli ang halimbawa ng mga talahanayan ng Mga Guro at Mga Mag-aaral. Ang talahanayan ng mga guro ay naglalaman lamang ng ID, pangalan, at haligi ng kurso:

Mga guro
InstructorIDPangalan ng guroKurso
001John DoeIngles
002Jane SchmoeMath

Kasama sa talahanayan ng mga Estudyante ang isang ID, pangalan, at isang banyagang hanay ng haligi:

Mga mag-aaral
StudentIDPangalan ng estudyanteTeacher_FK
0200Lowell Smith001
0201Brian Short001
0202Corky Mendez002
0203Monica Jones001

Ang haligi Teacher_FK sa mga talahanayan ng Mga mag-aaral ang pangunahing pangunahing halaga ng isang magtuturo sa talahanayan ng mga Guro.

Kadalasan, gagamitin ng mga designer ng database ang "PK" o "FK" sa pangalan ng hanay upang madaling makilala ang isang pangunahing susi o dayuhang hanay ng haligi.

Tandaan na ang dalawang talahanayan ay naglalarawan ng isang isa-sa-maraming ugnayan sa pagitan ng mga guro at ng mga mag-aaral.

Relationships at Referential Integrity

Sa sandaling nagdagdag ka ng isang banyagang susi sa isang talahanayan, maaari kang lumikha ng isang hangganan ng database na nagpapatupad ng referential integridad sa pagitan ng dalawang talahanayan. Tinitiyak nito na ang mga relasyon sa pagitan ng mga talahanayan ay nananatiling pare-pareho Kapag ang isang talahanayan ay may isang banyagang susi sa isa pang talahanayan, ang konsepto ng referential integridad ay nagsasaad na ang anumang mga pangunahing halaga ng mga banyagang halaga sa Table B ay dapat sumangguni sa isang umiiral na talaan sa Table A.

Pagpapatupad ng mga Relasyon

Depende sa iyong database, pinapatupad mo ang mga relasyon sa pagitan ng mga talahanayan sa iba't ibang paraan. Ang Microsoft Access ay nagbibigay ng isang wizard na madali mong pinapayagan na mag-link ng mga talahanayan at upang ipatupad ang referential integridad.

Kung nagsusulat ka nang direkta sa SQL, gagawin mo muna ang talahanayan ng Mga Guro, na nagpapahayag ng haligi ng ID upang maging pangunahing susi:

LUMIKHA NG TALAAN Mga guro (

InstructorID INT AUTO_INCREMENT PRIMARY KEY, Teacher_Name VARCHAR (100), Kurso sa VARCHAR (100));

Kapag nililikha mo ang talahanayan ng Mga Mag-aaral, idineklara mo ang hanay ng Teacher_FK upang maging isang banyagang susi na tumutukoy sa haligi ng InstructorID sa talahanayan ng Mga Guro:

Gumawa ng TALAAN Mga mag-aaral ( StudentID INT AUTO_INCREMENT PRIMARY KEY, Student_Name VARCHAR (100), Teacher_FK INT, FOREIGN KEY (Teacher_FK) MGA REFERENCES Mga Guro (InstruktorID)));

Paggamit ng Mga Relasyon sa Sumali sa Mga Table

Sa sandaling nalikha mo ang isa o higit pang mga relasyon sa iyong database, maaari mong mapakinabangan ang kanilang kapangyarihan sa pamamagitan ng paggamit ng SQL JOIN na mga query upang pagsamahin ang impormasyon mula sa maraming mga talahanayan. Ang pinaka-karaniwang uri ng sumali ay isang SQL INNER JOIN, o isang simpleng pagsali. Ang ganitong uri ng sumali ay nagbabalik ng lahat ng mga talaan na nakakatugon sa kondisyon ng sumali mula sa maraming mga talahanayan.Halimbawa, ang kondisyon ng JOIN na ito ay babalik sa Student_Name, Teacher_Name, at Course kung saan tumutugma ang banyagang key sa mga mag-aaral sa pangunahing susi sa talahanayan ng Mga Guro:

Piliin ang Mga Mag-aaral.Student_Name, Mga Guro.Teacher_Name, Teacher.CourseMULA sa Mga Mag-aaralINNER JOIN TeachersON Students.Teacher_FK = Teachers.InstructorID;

Ang pahayag na ito ay gumagawa ng isang talahanayan ng ganito:

Ang Returned Table mula sa SQL Sumali Statement

Student_NameTeacher_NameCourseLowell SmithJohn DoeEnglishBrian ShortJohn DoeEnglishCorky MendezJane SchmoeMathMonica JonesJohn DoeEnglish