Introduzione à a relazione di basa di basa

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.

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:

Maestri
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:

Studienti
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