A basa di basa di dati "relational" o "relation" detalla a manera chì i dati in e tàvule sò culligati.
I minacciati à u mundumanu di basa di dati anu spessu un momentu difficiuli di vede a diffarenza tra una basa di dati è una spregla. Vedenu tàvule di dati è ricanuscianu chì e base di datu per permettenu d'urganizà è di ricerca di dati in modi novi, ma falla di capisce a significazione di e relazioni trà a dati chì dà a tecnulugia di a tecnulugia relacional.
I relazioni permettenu di discrive i ligami trà e diverse tàvuti di basa di basa in modu putenti. Queste rilazioni pò esse inprinciuta per a realizà e quistione cruciali di a table, cunnisciuta cum'è unita.
Tipi di Rispondi di Base de Datos
Ci hè trè tippi diffirenti di rilazioni di basa di dati, chjamati numeriati secondu u numeru di pilcheghji chì pò esse implicati in a relazione. Ogni chist'autore trè trè numeri di rapportu esisti dui mesa.
- I relazioni unificati si quandu ogni intrattenimentu in a prima tassa hè unu, è solu una, contraparte in a seconda table. I rilationsi unu-à-unu sò raramenti utilizati perchè hè spessu efficacive per pudè mette in tutti l'infurmazioni in una sola mesa. Certi disinfestatori di basa di dati pigghianu l'appughjate nantu à questa rilazioni cresciute e tàvule chì cuntenenu un intégrale di a dati d'una altra tassa
- I relazioni unificanti sò u più tipu cumuni di a relazione di basa di dati. Sò fatti chì ogni registrazione in a Table A currisponde à unu o più registri in a Table B, ma ogni registru in Table B hè solu risponde à un registru in a Table A. Per esempiu, a relazione trà una tabella di i maestri è una tabella di i studienti in una scola elementale A basa di dati puderebbe sia una relazioni unilaterale, perchè ogni studiente anu solu un maestru, ma ogni maestru t'hà parechji studienti. Questu disuniversu per aiutà à eliminà a duplicate data.
- Parechje à parechji relazioni sò quandu ogni recordu in a Table A currisponde à unu o più registri in Table B, è ogni registru in Table B corresponde à unu o more records in Table A. Per esempiu, a relazione entre un Maestru è un Corsi tavulinu prubabilmente foru assai, perchè ogni maestru pò impidiglià più di un cursu, è ogni cursu possu più di un instructore.
Riflerizazioni d'autore-referencing: Un casu specialu
I relazioni autore referencing si sò quandu u soli una tavola implicata. Un cumunu esempiu hè una tabella Impiante chì cuntene infurmazione nantu à u tutore di ogni impiigatu. Ogni supervisore hè ancu un impiigatu è hà u so so supervisore. In questu casu, ci hè una relazioni d'autorefigurazione unificata, cum'è ogni empleadu hà unu supervisore, ma ogni survigore pò avè più di un impiigatu.
Creà e Relazione cù Chjami Estrani
Cumpite relazioni trà e tàvule cun specifizione una chjave straniera . Questa chjave rende à a basa di dati relazione chì i tavule sò rilativi. In parechji casi, una cullizzioni in a Table A contene chjuti primari chì sò riferiti da Table B
Piglianu novu l'esempiu di i maestri è i studienti. A tabella di i maestri cuntene una identità, un nome è una culore di culore:
InstructorID | Teacher_Name | Corso |
---|---|---|
001 | John Doe | Inglese |
002 | Jane Schmoe | Matematica |
A Table di u studiente include una ID, nome è una chjave di chjave straniera:
StudentID | Student_Name | Teacher_FK |
---|---|---|
0200 | Lowell Smith | 001 |
0201 | Brian Short | 001 |
0202 | Corky Mendez | 002 |
0203 | Monica Jones | 001 |
A colonna Mestre_FK in a Puntu di l'alumne refiere u valore chjaru principale di un instructore in u tabellu di i maestri.
Spessu, i disinfestatori di basa di dati utilizate "PK" o "FK" in u nome di a columna per facilmente identifiere una chjave primaria o una chjave di stranieri.
Avemu nutatu chì sti dui metri illustrate una relazioni unificata trà i maestri è i studienti.
Relazioni è integrità Referenziale
Una volta chì aghjunghjenu una chjave straniera in una tavula, pudete dinò creà una restuccia di dati chì impone l' integrità referenziale trà i dui tuli. Questu hà assicuratu chì i relazioni trà e tàvule sò stati cuntinui. Quandu una tavola hè una chjave straniera in un altru tavulu, u cuncettu di l'integrità referenziale strogna chì qualsiasi valore chjave straniera in a Table B must referite à un registru in a Table A.
Implementazione di e relazioni
Sicondu a vostra basa di dati, pudete implementà relazioni trà e tàvule in modu diffirenti. Microsoft Access provista un magia chì facilità à vede li ligami i toli è per esse impone l'integrità referenziale.
Sè vo site à scrive SQL direttamente, pudete prima creà a tabella Maestri, dichjarendu una colonna d'identità per esse a chjave principale:
CREATE TABLE Docenti (
InstructorID INT AUTO_INCREMENT PRIMARY KEY,
Teacher_Name VARCHAR (100),
U corsu VARCHAR (100)
);
Quandu create a tabella di i studienti, dichjarete a columna di Teacher_FK per esse una chjave straniera chì riferisce a cullezione InstructorID in a lista di i maestri:
CREATE TABLE Students (
StudentID INT AUTO_INCREMENT PRIMARY KEY,
Student_Name VARCHAR (100), Teacher_FK INT,
FOREIGN KEY (Teacher_FK) REFERENCES Maestri (InstructorID))
);
Utilizare e Relazione per Unisce Tables
Una volta chì hà criatu una o più relazioni in a vostra basa di dati, pudete assicurà u so putere à utilizà SQL JOIN quistione per combine l'infurmazioni di i tuli più. U tipu più cumuni di unisce hè un SQL INNER JOIN, o una simplicità simplificada. Stu tipu di cunnessu torna tutti i registri chì si ncontranu u cumpendu di a cumpunimentu da e tàvule. Per esempiu, questa condicione JOIN hè devi à u Student_Name, Teacher_Name, è Curse in chì a chjave straniera in a Table di Alumini cù a chjave primaria in a Tola di maestri:
SELECT Students.Student_Name, Teacher.Teacher_Name, Teacher.Course
FROM Students
INNER JOIN Maestri
Nantu à Studientu.Teacher_FK = Docenti.InstructorID;
Sta manifestazione pruduci un tavulu quarchi cosa chistu:
Table tornata da u SQL SQL Statistiche
Student_NameTeacher_NameCourseLowell SmithJohn DoeEnglishBrian ShortJohn DoeEnglishCorky MendezJane SchmoeMathMonica JonesJohn DoeEnglish