Den Datebeschéngter "Relatioun" oder "Bezéiung" beschreift d'Art a Weis datt dës Donnéeën an Dëscher verbonne sinn.
Nei Nei Nei Nei Nei Nei Nei Nei Nei Nei Nei Nei Nei Nei Nei Nei Nei Nei Nei Nei Nei Nei Inzemaachen Nei Datenbanken op d'Welt vun den Datenbanken hunn oft en härzeg Zäit, den Ënnerscheed tëscht enger Datebank an enger Tabellenblat. Si gesinn Dëscher vun Daten an erkennen dat Datenbanken Iech erméiglechen, Daten op nei Weeër ze organiséieren an auszetauschen , awer net fir d'Bedeitung vun de Bezéiungen tëschent Donnéeën ze erfannen, déi Relatioun mat der Datenbank Technologie hiren Numm hunn.
Bezéiungen erlaaben Iech d'Verbindungen tëschent verschiddene Datebank Dëscher op mächtlech Weeër ze beschreiwen. Dës Bezéiungen kënnen dann erweidert ginn, fir kräftequotenzial Query queries, bekannt als joins.
Typen vun Datenbankbevëlkerungen
Et ginn dräi verschidden Type vun Bezuelungsdaten, all nennt nom Nummer vun Dëschreihen, déi an der Bezéiung involvéiert sinn. All dës dräi Bezéiungsarten existéiert tëscht zwee Dëscher.
- Een-zu-One Bezéiungen trëtt un, wann all Equipement an der éischter Tiel een, an nëmmen een, an der zweeter Dësch. Een-zu-One Bezéiungen si rar benotzt ginn, well et dacks méi effizient ass fir all Informatioun an engem eenzegen Dësch ze setzen. E puer Datebank Designer benotzen dës Bezéiung duerch Schafe vun Dëscher, déi e Subset vun den Donnéeën aus enger anerer Tabelle enthalen.
- Ee-a-ville Bezéiungen sinn déi bekanntst Aart vun der Bezuelung vun der Datebank. Si sinn opfälleg, wann all Opzeechnung an der Tabelle A mat engem oder méi Rekorder an der Tabelle B entsprécht, awer all Rekord an der Tabelle B entsprécht nëmmen ee Rekord vun der Tabell A. Wann d'Bezéiung tëschent enger Léierpersoun an enger Studenteet an enger Grondschoul Dat Datebank wäerte wahrscheinlech eng eenzeg Relatioun sinn, well all Student huet nëmmen e Léierpersonal, mä all Léierin huet verschidde Studenten. Dëse One-to-Many-Design hëlleft doduerch verdoppelt Daten.
- Vill Relatiounen hu vläicht, wann all Opzeechnung an der Tabelle A mat enger oder méi Partneren an der Tabelle B entsprécht, an all Rekord an der Tabelle B entsprécht engem oder méi Rekorder an der Tab. A. Zum Beispill d'Bezéiung tëscht Léierpersounen a Coursen Tabell wäert et wahrscheinlech nach vill ze vill sinn, well all Enseignant kann méi wéi ee Kurs uginn, an all Kurs kann méi wéi ee Lehrer hunn.
Self Referenzéierungsrelatiounen: E Speziale Fall
Selbstverständlech Bezéiungen kommen wann et nëmmen een Dësch ass. Een gemeinsame Beispill ass eng Employees table, déi Informatiounen iwwer de Supervisor vun all Mataarbechter enthält. All Supervisor ass och e Mataarbechter an huet säin eegene Supervisor. An dësem Fall ass et eng eenzeg Selbstverständlechkeet, well all Employé eng Supervisor huet, mä all Supervisor kann méi wéi engem Employé hunn.
Bezéiungssäiten mam Auslännesch Keelt
Dir kënnt Relatiounen tëschent Dëschen erstellen andeems Dir e Fremdschlag ze spezifizéieren. Dëst Schlëssel erzielt d'Relatiounen an der Bezuelung wéi d'Dëscher verwandt sinn. A ville Fäll ass eng Kolonn an der Tabelle A primär Tastendunge mat Referenz vum Table B. genannt.
Gëtt nach e puer Beispiller vun de Léierpersonal a Studenteabannen. D'Léierpersonal Dësch just eng Identifikatioun, en Numm, an eng Course Kolonne:
InstructorID | Teacher_Name | Course |
---|---|---|
001 | John Doe | Englesch |
002 | Jane Schmoe | Math |
D'Studenten-Table beinhalt eng Identitéit, e Numm an eng auslännesch Taste Column:
StudentID | Student_Name | Teacher_FK |
---|---|---|
0200 | Lowell Smith | 001 |
0201 | Brian Short | 001 |
0202 | Corky Mendez | 002 |
0203 | Monica Jones | 001 |
D'Kolonn Teacher_FK an der Studenteplaz referenzéiert de primäre Keesseschutz vun engem Léierpersonal an der Léierpersonnal.
Heefeg, Datenbankdesigner benotzen "PK" oder "FK" am Spëtzennumm, fir e Primärschloss oder auslännesche Schlësselkalenner ze identifizéieren.
Stëmmen datt dës zwou Dëscher eng eenzeg Bezéiung tëscht den Enseignanten an de Studenten illustrieren.
Bezéiungen an Referenzéierungsintegritéit
Sidd Dir een auslännesche Schluss op eng Dësch hinzugefügt, kënnt Dir dann eng Datebank-Constraint erstellen, déi referenziell Integritéit zwëschen deenen zwee Dëscher applizéiert. Dëst garantéiert datt d'Relatiounen tëscht den Dëscher konsequent sinn. Wann een Dësch en auslännesche Schluss op eng aner Tabelle huet, léisst de Konzept vun Referenzntegritéit fest datt all Fremdschlüsselfwert an der Tabelle B op eng existente Plack an der Tab. A. bezitt.
Ëmsetzung Bezéiungen
Ofhängeg vun Ärer Datenbank hutt Dir Relatiounen tëschent Dëscher op verschidden Weeër gemaach. Microsoft Access liwwert e Wizard deen Dir kënnt einfach Tabellen verlinkt an och d'referenzielle Integritéit zwëschen.
Wann Dir SQL direkt schreift, da géift Dir d'Tabelle Léierpersounen kreéieren, fir eng Spär vun engem Identitéë fir de primäre Keess ze deklaréieren:
CREAT TABLET Léierpersonal (
InstructorID INT AUTO_INCREMENT PRIMÄSCH KEE,
Teacher_Name VARCHAR (100),
Course VARCHAR (100)
);
Wann Dir d'Studente-Tabelle erstallt, erklärt Dir de Teacher_FK-Spalt als en auslännesche Schluss ze referenzéieren der Sprooch InstructorID an der Léierpersonnal:
CREATEN TABLET Schüler (
StudentID INT AUTO_INCREMENT PRIMÄSCH KEIER,
Student_Name VARCHAR (100), Teacher_FK INT,
FOREIGN KEY (Teacher_FK) REFERENZEN Léierpersonal (InstructorID))
);
Benotzt Bezéiungen zum Join Tabellen
Sidd Dir eng oder méi Bezéiungen zu Ärer Datebank erstallt, kënnt Dir hir Muecht leeschten andeems Dir SQL JOIN Ufroen benotzt fir Informatiounen aus verschiddene Dëscher ze verbannen. Déi bekanntst Aart vu Bäitrëtt ass eng SQL INNER JOIN, oder eng einfach Memberschoul. Dës Zort vu verbënnt all Dossier déi déi verbitt Zoustand vun méi Dëscher treffen. Zum Beispill gëtt dës JOIN Conditioun den Student_Name, Teacher_Name zréck a Course wou den auslännesche Schlëssel an der Studente-Tabelle mat dem Primärschlüssel an der Teachers-Tabelle entsprécht:
SELECT Schüler.Student_Name, Lehrer. Daecher, Léierpersonal
AUS STUDÉIEREN
INNER JOIN Léierpersonal
ON Students.Teacher_FK = Léierpersonal.InstructorID;
Dës Erklärung produzéiert en Dësch vir:
Zréck Tabelle aus der SQL Join Statement
Student_NameTeacher_NameCourseLowell SmithJohn DoeEnglischBrian ShortJohn DoeEnglishCorky MendezJane SchmoeMathMonica JonesJohn DoeEnglish