Ang database nga termino nga "relational" o "relasyon" naghulagway sa paagi nga ang kasayuran sa mga lamesa konektado.
Ang mga bag-ong nangabot sa kalibutan sa mga database kasagarang naglisud sa pagkakita sa kalainan tali sa usa ka database ug usa ka spreadsheet. Nakita nila ang mga talaan sa datos ug nahibal-an nga ang mga database nagtugot kanimo sa pag-organisar ug pagpangutana sa mga datos sa bag-ong mga paagi, apan wala makasabot sa kahulogan sa mga relasyon tali sa mga datos nga naghatag sa relational database technology sa ngalan niini.
Ang mga relasyon makapahimo kanimo sa paghulagway sa koneksyon tali sa nagkalainlain nga mga lamesa sa database sa gamhanan nga mga paagi Kini nga mga relasyon mahimo nga magamit sa paghimo sa mga kusganon nga mga pangutana diha sa cross-table, nga gitawag nga joining.
Mga Basahon sa mga Kaugalingon sa Database
Adunay tulo ka lainlaing matang sa mga relasyon sa database, ang matag usa nga ginganlan sumala sa gidaghanon sa mga lumbay sa lamesa nga mahimong nalangkit sa relasyon. Ang matag usa niining tulo ka mga matang sa relasyon anaa sa taliwala sa duha ka mga lamesa.
- Ang usa-sa-usa nga mga relasyon mahitabo kon ang matag entry sa unang lamesa adunay usa, ug usa lamang, katugbang sa ikaduhang lamesa. Ang mga one-to-one nga mga relasyon panagsa ra nga gigamit tungod kay sa kasagaran mas maayo nga ibutang lamang ang tanang impormasyon sa usa ka lamesa. Ang pipila nga mga tigdisenyo sa database nagpahimulos niini nga relasyon pinaagi sa pagmugna og mga lamesa nga naglangkob sa usa ka tipik sa datos gikan sa lain nga lamesa.
- Ang usa-sa-daghan nga mga relasyon mao ang labing komon nga matang sa relasyon sa database. Kini mahitabo sa diha nga ang matag talaan sa Talaan A katumbas sa usa o labaw pa nga mga talaan diha sa Talaan B, apan ang matag talaan sa Talaan B katumbas lamang sa usa ka rekord sa Talaan A. Pananglitan, ang relasyon tali sa usa ka lamesa sa mga Magtutudlo ug usa ka lamesa sa mga Estudyante sa elementarya Ang database lagmit usa lang ka relasyon, tungod kay ang matag estudyante adunay usa lamang ka magtutudlo, apan ang matag magtutudlo adunay daghang mga estudyante. Kining one-to-many nga disenyo makatabang sa pagwagtang sa doble nga datos.
- Daghan sa mga relasyon ang mahitabo sa diha nga ang matag rekord sa Talaan A katumbas sa usa o labaw pa nga mga talaan sa Talaan B, ug ang matag talaan sa Talaan B katumbas sa usa o labaw pa nga mga talaan sa Talaan A. Pananglitan, ang relasyon tali sa mga Magtutudlo ug mga Kurso Ang lamesa lagmit nga daghan-sa-daghan tungod kay ang matag magtutudlo makatudlo labaw pa kay sa usa ka kurso, ug ang matag kurso adunay labaw pa kay sa usa ka magtutudlo.
Kaugalingon nga Pag-refer sa Kaugalingon: Usa ka Espesyal nga Kaso
Ang mga relasyon sa paghisgot sa kaugalingon mahitabo kon adunay usa lamang ka lamesa nga nalangkit. Usa ka kasagaran nga pananglitan mao ang usa ka empleyado nga lamesa nga adunay impormasyon bahin sa supervisor sa matag empleyado. Ang matag superbisor usa usab ka empleyado ug adunay iyang kaugalingong superbisor. Sa kini nga kaso, adunay usa ka usa ka sa-kaugalingon nga pagtandi sa relasyon, tungod kay ang matag empleyado adunay usa ka superbisor, apan ang matag superbisor mahimong adunay labaw sa usa ka empleyado.
Pagmugna og mga Relasyon nga may Langyaw nga mga Yawe
Gihimo nimo ang mga relasyon tali sa mga lamesa pinaagi sa pagtino sa usa ka langyaw nga yawe .Kini nga yugto nagsulti sa relational database kon giunsa nga ang mga lamesa adunay kalabutan. Sa daghang mga kaso, usa ka kolum sa Talaan A naglangkob sa nag-una nga mga yawe nga gipunting gikan sa Table B.
Hunahunaa pag-usab ang panig-ingnan sa mga lamesa sa mga Magtutudlo ug Estudyante. Ang mga lamesa sa mga Magtutudlo adunay sulod lamang nga ID, usa ka ngalan, ug kolum nga kurso:
InstructorID | Teacher_Name | Kurso |
---|---|---|
001 | John Doe | Iningles |
002 | Jane Schmoe | Math |
Ang mga Estudyante nga lamesa naglakip sa usa ka ID, ngalan, ug usa ka langyaw nga yunit nga kolum:
EstudyanteID | Student_Name | Teacher_FK |
---|---|---|
0200 | Lowell Smith | 001 |
0201 | Brian Short | 001 |
0202 | Corky Mendez | 002 |
0203 | Monica Jones | 001 |
Ang kolum nga Teacher_FK sa mga estudyante sa lamesa naghisgot sa nag-unang hinungdan nga bili sa instruktor sa lamesa sa mga Magtutudlo.
Kasagaran, ang mga designers sa database mogamit sa "PK" o "FK" sa ngalan sa kolum aron dali nga mailhan ang usa ka nag-unang yawe o langyaw nga yawe nga kolum.
Timan-i nga kining duha ka lamesa nag-ilustrar sa usa-ka-daghan nga relasyon tali sa mga magtutudlo ug sa mga estudyante.
Kaugalingon ug Mapakita nga Integridad
Sa higayon nga nagdugang ka og usa ka langyaw nga yawe sa usa ka lamesa, mahimo nimong mahimo ang usa ka pagpugong sa database nga nagpatuman sa mahinungdanong integridad tali sa duha ka mga lamesa. Kini nagsiguro nga ang mga relasyon tali sa mga lamesa nagpabilin nga makanunayon. Sa diha nga ang usa ka lamesa adunay usa ka langyaw nga yawe sa lain nga lamesa, ang konsepto sa referential integrity nag-ingon nga ang bisan unsang langyaw nga hinungdan nga bili sa Table B kinahanglan nga nagtumong sa usa ka kasamtangan nga rekord sa Table A.
Pagpatuman sa mga Relasyon
Depende sa imong database, imong gipatuman ang mga relasyon tali sa mga lamesa sa lainlaing paagi. Ang Microsoft Access naghatag og usa ka wizard nga dali nga nagtugot kanimo sa pag-link sa mga lamesa ug pagpatuman usab sa referential integridad.
Kon ikaw direkta nga nagsulat sa SQL, ikaw ang una nga maghimo sa lamesa nga Mga Magtutudlo, nga nagdeklara sa usa ka kolum sa ID nga mao ang pangunang butang:
PAGLIKAW SA TABANG MGA MAGTUTUDLO (
InstructorID INT AUTO_INCREMENT PRIMARYYONG KEY,
Teacher_Name VARCHAR (100),
Kursong VARCHAR (100)
);
Kon ikaw maghimo sa mga lamesa sa mga Estudyante, imong ipahayag ang kolum sa Teacher_FK nga usa ka langyaw nga yawe nga nagtumong sa kolum sa InstructorID sa lamesa sa mga Magtutudlo:
PAG-ILA SA TALAAN Mga Estudyante (
StudentID INT AUTO_INCREMENT PRIMARYYONG KEY,
Student_Name VARCHAR (100), Teacher_FK INT,
FORESIGN KEY (Teacher_FK) MGA REFERENCES Mga magtutudlo (InstruktorID))
);
Paggamit sa mga Relasyon sa Pag-apil sa mga Tables
Sa higayon nga imong gibuhat ang usa o daghan pa nga mga relasyon sa imong database, mahimo nimo ang paggamit sa ilang gahum pinaagi sa paggamit sa mga pangutana sa SQL JOIN aron mahiusa ang kasayuran gikan sa daghang mga lamesa. Ang labing kasagaran nga matang sa pag-apil mao ang SQL INNER JOIN, o usa ka simple nga pag-apil. Kini nga matang sa pag-abut mobalik sa tanan nga mga rekord nga makatagbo sa kondisyon sa pag-apil gikan sa daghang mga lamesa. Pananglitan, kini nga kondisyon sa JOIN mobalik sa Student_Name, Teacher_Name, ug Kurso diin ang foreign key sa mga estudyante sa lamesa nagatumbok sa pangunang yawe sa lamesa sa mga Magtutudlo:
PILILI ang mga estudyante.Student_Name, Teachers.Teacher_Name, Teachers.Course
GIKAN sa mga Estudyante
INNER JOIN Teachers
ON Students.Teacher_FK = Mga magtutudlo.InstructorID;
Kini nga pamahayag nagpakita sa usa ka lamesa nga sama niini:
Ang Returned Table gikan sa SQL Join Statement
Gikuha gikan sa "http://ceb.wikipedia.org/wiki/Maghalad"