Ny fehezan-teny hoe "relational" na "fifandraisana" dia mamaritra ny fomba ifandraisana amin'ny angon-drakitra.
Ny mpikirakira vaovao any amin'ny tontolon'ny data dia matetika dia sarotra ny mahita ny fahasamihafana misy eo amin'ny tahiry sy ny takelaka. Nahita latabatry ny angon-drakitra izy ireo ary miaiky fa mamela anao handamina sy hanadihady ny angona amin'ny angona vaovao ny tahiry , saingy tsy takatrao ny dikan'ny fifandraisana misy eo amin'ny data izay manome ny teknolojia momba ny teknolojia mifandraika amin'ny anarany.
Ny fifandraisana dia mamela anao hamaritra ny fifandraisana eo amin'ny tabilao samihafa amin'ny fomba mahery. Ireo fifandraisana ireo dia azo ampiasaina mba hanatanterahana ny fangatahana fanadinana matanjaka, fantatra amin'ny hoe anjarany.
Karazana fifandraisana momba ny Database
Misy karazana telo ny fifandraisana misy ny momba ny angona database, ny tsirairay dia voalaza araka ny isa maromaro izay mety ho tafiditra ao anatin'ny fifandraisana. Ireo karazana fifandraisana telo ireo dia misy eo amin'ny latabatra roa.
- Ny fifandraisana iray isaky ny iray dia mitranga rehefa misy ny fidirana ao amin'ny latabatra voalohany, iray, ary iray monja, mifanohitra amin'ny latabatra faharoa. Ny fifandraisana iray monja dia tsy dia ampiasaina satria matetika dia mahomby kokoa ny mametraka ny fampahalalana rehetra amin'ny tabilao tokana. Ny sasany amin'ireo mpanodina an'arivony dia manararaotra io fifandraisana io amin'ny famoronana tabilao izay ahitana ampahany ny angona avy amin'ny latabatra hafa.
- Ny fifandraisana iray amin'ny ankamaroan'ny olona dia ny karazana firafitry ny fifandraisana amin'ny ankapobeny. Mitranga izany rehefa raketin'ny rakitsoratra tsirairay ao amin'ny Table A ny rakitsoratra tsirairay ao amin'ny Table A, fa ny rakitsoratra tsirairay ao amin'ny Table B dia tsy misy afa-tsy ny rakitsoratra iray ao amin'ny Tabilao A. Ohatra, ny fifandraisana misy eo amin'ny latabatra mpampianatra sy ny mpianatra mipetraka any amin'ny sekoly ambaratonga fototra Ny database dia mety ho fifandraisana tokana, satria ny mpianatra tsirairay dia tsy manana mpampianatra afa-tsy, fa ny mpianatra tsirairay dia manana mpianatra maromaro. Ity design misy iray ity dia manampy amin'ny fanafoanana ireo antontan-taratasy duplicated.
- Maro ny fifandraisana mitranga rehefa raketin'ny firaketana an-tsoratra tsirairay ao amin'ny Table A ny rakitsoratra tsirairay ao amin'ny Table A, ary ny rakitsoratra tsirairay ao amin'ny Table B dia mifanaraka amin'ny rakitra iray na maromaro ao amin'ny Tabilao A. Ohatra, ny fifandraisana misy eo amin'ny mpampianatra sy ny kilasy Ny tabila dia mety ho maro an'isa satria ny mpampianatra tsirairay dia afaka manoro fianarana mihoatra ny iray, ary mety hisy mpampianatra mihoatra ny iray.
Fifandraisana mivantana amin'ny tena: tranga manokana
Ny fifandraisana manokan'ny tena manokana dia mitranga rehefa misy tabilao tokana tafiditra. Ny ohatra iraisana iray dia ny tabilaon'ny Employees izay misy ny fanazavana momba ny mpiandraikitra ny mpiasa tsirairay. Mpitantana daholo ny mpiandraikitra tsirairay ary manana mpiandraikitra azy manokana. Amin'ity tranga ity, misy fifandraisana iray samihafa amin'ny fifandraisana amin'ny tena manokana, satria ny mpiasa tsirairay dia manana mpiandraikitra iray, fa ny mpanara-maso tsirairay dia mety manana mpiasa mihoatra ny iray.
Famoronana fifandraisana amin'ny Foreign Keys
Manorina fifandraisana eo amin'ny latabatra ianao amin'ny alalan'ny famaritana ny fanalahidin'ny vahiny . Ity fanalahidy ity dia manambara ny fandaharam- pitenenana relational momba ny tabilao mifandray. Amin'ny tranga maro, ny tsanganana ao amin'ny Tabilao A dia ahitana fanalahidy fototra izay resahina ao amin'ny Table B.
Hevero indray ny ohatra nasehon'ny latabatra mpampianatra sy mpianatra. Ny tabilao mpampianatra dia ahitana ID, anarana, ary andalana iray:
InstructorID | Teacher_Name | Course |
---|---|---|
001 | John Doe | anglisy |
002 | Jane Schmoe | Math |
Ny mpianatra ny latabatra dia ahitana ID, anarana, ary tsanganana fanalahidy vahiny:
StudentID | Student_Name | Teacher_FK |
---|---|---|
0200 | Lowell Smith | 001 |
0201 | Brian Short | 001 |
0202 | Corky Mendez | 002 |
0203 | Monica Jones | 001 |
Ny mpampianatra Teacher_FK ao amin'ny latabatry ny mpianatra dia manondro ny lanjany lehibe indrindra amin'ny mpampianatra ao amin'ny latabatry mpampianatra.
Matetika, ireo teknisiana avy amin'ny database dia hampiasa "PK" na "FK" amin'ny anaran'ny tsanganana mba hahafantarana mora foana ny fanalahidy fototra na lohataona vahiny.
Mariho fa ireo tabilao roa ireo dia maneho fifandraisana iray misy ifandraisany amin'ny mpampianatra sy ny mpianatra.
Fifandraisana sy ny tsy fitoviana
Raha vantany vao nampidirinao fanalahidy vahiny amin'ny tabilao ianao, dia afaka mamorona tambin-karazan-tserasera izay mampihatra ny fahamendrehana eo amin'ny tabilao roa. Izany dia miantoka fa ny fifandraisana eo amin'ny latabatra dia tsy miovaova. Raha misy latabatra iray manana fanalahidin'ny vahiny ho an'ny latabatra hafa, dia milaza ny foto-kevitra momba ny tsy fivadihana amin'ny references fa ny sandan'ny fanandevozana vahiny rehetra ao amin'ny Table B dia tokony hanondro ny rakitsoratra efa misy ao amin'ny TABLE A.
Fanatanterahana fifandraisana
Miankina amin'ny tahirin-kevitrao, manamboatra fifandraisana eo amin'ny latabatra amin'ny fomba samihafa. Ny Microsoft Access dia manome maimaim-poana izay ahafahanao mampifandray ny latabatra sy mampihatra ny tsy fisian'ny referanso.
Raha manoratra mivantana ny SQL ianao, dia mamorona voalohany ny mpampianatra latabatra ianao, ka manambara ny tsanganana ID ho ny fanalahidy fototra:
MIEZAHA HATRAMIN'NY TABLE (
InstructorID INT AUTO_INCREMENT PRIMARY KEY,
Teacher_Name VARCHAR (100),
Course VARCHAR (100)
);
Rehefa mamorona ny latabatry ny mpianatra ianao dia manambara ny seho Teacher_FK ho toy ny fanalahidy vahiny manondro ny tsanganana InstructorID ao amin'ny latabatry ny mpampianatra:
MAMPIHEVITRA mpianatra (
StudentID INT AUTO_INCREMENT PRIMARY KEY,
Student_Name VARCHAR (100), Teacher_FK INT,
FAMPIANARANA LEHIBE (Teach_FK) FAMPIANARANA Mpampianatra (InstructorID))
);
Mampiasà fifandraisana amin'ny fidirana Tables
Raha vao namorona fifandraisana iray na maromaro ao amin'ny tahirin-tserasera ianao dia afaka mampiasa ny heriny amin'ny fampiasana ny fangatahana SQL JOIN mba hampifangaroana ny vaovao avy amin'ny tabilao maromaro. Ny karazana fidirana mahazatra indrindra dia SQL INNER JOIN, na mpikambana tsotra. Ity karazana mpikambana ity dia mamerina ireo rakitsoratra rehetra izay mihaona amin'ny fepetra tafiditra amin'ny tabilao maromaro. Ohatra, ity fepetra JOIN ity dia hamerina ny Student_Name, Teacher_Name, ary ny kilasy misy ny fanalahidin'ny vahiny eo amin'ny latabatry ny mpianatra izay mifanandrify amin'ny fanalahidy fototra amin'ny tabilao mpampianatra:
SELECT Students.Student_Name, mpampianatra.Teacher_Name, Teachers.Course
FROM Students
INNER JOIN Mpampianatra
ON Students.Teacher_FK = Teachers.InstructorID;
Ity fanambarana ity dia mamokatra latabatra toy izao:
Tafaverina niverina avy amin'ny SQL Join Statement
Student_NameTeacher_NameCourseLowell SmithJohn DoeEnglishBrian ShortJohn DoeEnglishCorky MendezJane SchmoeMathMonica JonesJohn DoeEnglish