දත්ත සමුදා සබඳතා පිළිබඳ හැදින්වීම

දත්ත සමුදායේ පදාර්ථ "සම්බන්ධක" හෝ "සම්බන්ධතාවය" වගු වල දත්ත සම්බන්ධ වන ආකාරය විස්තර කරයි.

දත්ත සමුදායන් සඳහා නවකයින්ට දත්ත ගබඩාව සහ පැතුරුම්පත අතර වෙනස දැකීමට අපහසු වේ. දත්ත වගු දකින දත්ත සහ දත්ත සමුදායන් නව ක්රම ඔස්සේ දත්තයන් සංවිධානය කිරීමට සහ විමසීමට ඉඩ සලසයි, නමුත් සම්බන්ධතා දත්ත සමුදාය තාක්ෂණය එහි නමට ලබා දෙන දත්ත අතර සබඳතාවේ වැදගත්කම වටහා ගැනීමට අපොහොසත් වේ.

සබඳතා මගින් ඔබට වෙනස් දත්ත ගබඩා වගු ප්රබල ආකාරවලින් සම්බන්ධතා විස්තර කිරීමට ඉඩ ලබා දේ. මෙම සබඳතාවන් පසුව එකතු වන ලෙස හැඳින්වෙන බලවත් හරස් වගු විමසුම් සිදු කිරීම සඳහා උත්තෝලනය කළ හැක.

දත්ත සමුදා සබඳතා වර්ග

සම්බන්ධතා සඳහා සම්බන්ධ විය හැකි අඬු පේළි ගණන අනුව එක් එක් දත්ත සමුදා සබඳතා වර්ග තුනක් තිබේ. මෙම සම්බන්ධතා වර්ග තුනෙන් එකක් සෑම වගු දෙකක් අතර පවතී.

ස්වයං-යොමු කිරීමේ සබඳතා: විශේෂ අවස්ථාවක්

ස්වයං-සම්බන්ධතා සබඳතා සිදුවන්නේ එක් වගුවක පමණි. එක් පොදු සේවයක් යනු එක් එක් සේවකයාගේ සුපරීක්ෂක පිළිබඳ තොරතුරු ඇතුළත් සේවක වගුවක් වේ. සෑම අධීක්ෂකයකුම සේවකයෙකු වන අතර ඔහුගේ හෝ ඇයගේම අධීක්ෂකයා සිටී. එක් එක් සේවකයා එක් අධීක්ෂකයකුට ඇති බැවින්, එක් එක් සේවකයාට එක් සේවකයෙකුට වඩා වැඩි සේවාවක් තිබිය හැකිය.

විදේශීය යතුරු සමඟ සම්බන්ධතා ඇති කිරීම

විදේශීය යතුර නියම කිරීම මගින් ඔබට වගු අතර සබඳතා නිර්මාණය කරයි .මෙම වගු වගු සම්බන්ධ වන්නේ කෙසේ ද සාපේක්ෂ දත්තගබඩා විස්තර කරයි. බොහෝ අවස්ථාවන්හිදී, A වගුවේ A තීරුවේ තීරුව B හි සඳහන් වන මූලික යතුරු අඩංගු වේ.

ගුරු සහ ශිෂ්ය ශිෂ්යාවන්ගේ වගුව නැවත වරක් සලකා බලන්න. ගුරුවරුන්ගේ වගුව හුදෙක් හැඳුනුම්පතක්, නමක් සහ පාඨමාලාවේ තීරුවකි:

ගුරුවරු
උපදේශකයකු Teacher_Name පාඨමාලාව
001 ජෝන් ඩෝ ඉංග්රීසි
002 ජේන් ස්කෝ ගණිතය

සිසුන්ගේ වගුව, හැඳුනුම, නම සහ විදේශීය ප්රධාන තීරුව ඇතුළත් වේ:

සිසු
ශිෂ්ය හැඳුනුම්පත ශිෂ්ය_Name Teacher_FK
0200 ලොවෙල් ස්මිත් 001
0201 බ්රයන් කෙටි 001
0202 කොර්කි මෙන්ඩෙස් 002
0203 මොනිකා ජෝන්ස් 001

ශිෂ්ය රසය තුළ Teacher_FK තීරුව ගුරුවරුන්ගේ වගුවේ උපදේශකවරයෙකුගේ ප්රාථමික යතුර වටිනාකමයි .

නිතරම, දත්ත සමුදා සැලසුම්කරුවන් විසින් "PK" හෝ "FK" භාවිතා කරනුයේ තීරු නාමයේ ප්රාථමික යතුර හෝ විදේශ ප්රධාන තීරුව හඳුනාගැනීමටය.

මෙම වගු දෙකෙන් ගුරුවරුන් හා ශිෂ්යයන් අතර එක-බොහෝ සබඳතාවයක් ඇති බව සැලකිල්ලට ගන්න.

සම්බන්ධතා සහ විමර්ශනාත්මක අවංකභාවය

ඔබ විසින් වගුවක් සඳහා විදේශීය යතුරක් එක් කළ පසු, මේස දෙක අතර යොමුකරණ අඛණ්ඩතාවය බලගන්වන දත්ත සමුදා බාධකයක් නිර්මාණය කළ හැකිය. මෙම වගු අතර සබඳතා ස්ථාවර බව තහවුරු කරයි. එක් වගුවකට වෙනත් වගුවක් සඳහා විදේශීය යතුරක් තිබේ නම්, විමර්ශන අඛණ්ඩතාව පිළිබඳ සංකල්පය, වගුව B හි ඕනෑම විදේශීය අගයක අගය Table A හි පවතින වාර්තාවට යොමු විය යුතුය.

සබඳතා ක්රියාත්මක කිරීම

ඔබගේ දත්තගබඩා මත පදනම්ව, විවිධ ආකාරවලින් වගු අතර සබඳතා ක්රියාත්මක කරන්න. මයික්රොසොෆ්ට් ප්රොසෙසර් මඟින් ඔබට වගු සම්බන්ධ කිරීමට සහ යොමු කිරීමේ අඛණ්ඩතාව ක්රියාත්මක කිරීමට ඉඩ සලසයි.

ඔබ SQL කෙලින්ම ලියන්නේ නම් මුලින්ම ඔබ ගුරුවරුන්ගේ වගුව නිර්මාණය කරනු ඇත, ID තීරුව ප්රාථමික යතුර ලෙස ප්රකාශයට පත් කරනු ඇත:

ටේබල් ගුරුවරුන් සෑදීම (

උපකුලපති INT AUTO_INCREMENT PRIMARY KEY,
Teacher_Name VARCHAR (100),
පාඨමාලා VARCHAR (100)
);

ඔබ ශිෂ්ය වගුව නිර්මාණය කරන විට, Teacher_FK තීරුව TeacherID වගුවේ දැක්වෙන විදේශීය යතුරක් ලෙස හැඳින්විය යුතුය:

ටේබල් සිසුන් (
StudentID INT AUTO_INCREMENT PRIMARY KEY,
Student_Name VARCHAR (100), Teacher_FK INT,
විදේශීය නායකයා (Teacher_FK) ලුහුඬු දැන්වීම් ගුරුවරුන් (උපකුලපති))
);

බැඳුනු වගුව සඳහා සම්බන්ධතා භාවිතා කිරීම

ඔබ ඔබේ දත්ත සමුදායේ එක් හෝ වැඩි ගණනක් සබඳතා ගොඩනඟා පසුව, ඔබට SQL JOIN විමසුම් භාවිතා කිරීමෙන් බහු වගු වලින් තොරතුරු ඒකාබද්ධ කිරීමට හැකිය. බොහෝවිට පොදු සම්බන්ධතා වර්ගය වන්නේ SQL INNER JOIN, හෝ සරල එකතුවකි. මෙම ආකාරයේ සම්බන්ධතාවයන් එකතු වී ඇති දත්තයන් බහු ඇසුරුම් වලින් ගැලපෙන සියලුම වාර්තා නැවත ලබා ගනී. නිදසුනක් ලෙස, මෙම JOIN කොන්දේසිය ශිෂ්ය ගුරු වගුවේ ප්රාථමික යතුරට ගැලපෙන ශිෂ්යයාගේ වගුවේ විදේශීය යතුර ශිෂ්ය ශිෂ්ය නාමයේ, ගුරුවරයාගේ නම සහ පාඨමාලාව වෙත යවනු ලැබේ:

SELECT Students.Student_Name, Teachers.Teacher_Name, Teachers.Course
ශිෂ්යයින්ගෙන්
ඉන්න්කර් ගුරුතුමා
ශිෂ්යයින් සඳහා. ගුරුවරුන්: Teachers.InstructorID;

මෙම ප්රකාශය මෙවැනි වගුවක් නිර්මාණය කරයි:

SQL එකතු කිරීමේ ප්රකාශයෙන් ආපසු ලබා ගත් වගුව

ශිෂ්ය_NameTeacher_NameCourseLowell SmithJohn DoeEnglishBrian ShortJohn DoeEnglishCorky MendezJane SchmoeMathMonica JonesJohn DoeEnglish