Skip to main content

தரவுத்தள உறவுகள் அறிமுகம்

Anonim

தரவுத்தள கால "தொடர்புடைய" அல்லது "உறவு" அட்டவணைகள் தரவு இணைக்கப்பட்ட வழி விவரிக்கிறது.

தரவுத்தளங்களின் உலகத்திற்கு புதுமுகங்கள் பெரும்பாலும் ஒரு தரவுத்தளத்திற்கும் ஒரு விரிதாளத்திற்கும் உள்ள வேறுபாட்டைக் கண்டறிவதில் கடினமான நேரத்தைக் கொண்டிருக்கின்றன. அவர்கள் தரவு அட்டவணைகள் பார்க்க மற்றும் தரவு வழிகாட்டிகள் நீங்கள் புதிய வழிகளில் ஏற்பாடு மற்றும் கேள்வி கேட்க அனுமதிக்க, ஆனால் முக்கியத்துவம் புரிந்து கொள்ள முடியவில்லை என்று அங்கீகரிக்க தரவு இடையே உறவுகள் அது தொடர்புடைய தரவுத்தள தொழில்நுட்பத்தை அதன் பெயருக்கு கொடுக்கும்.

பல வழிகளில் தரவுத்தள அட்டவணைகளுக்கு இடையேயான தொடர்புகளை விவரிக்க உறவுகளை அனுமதிக்கிறது. இந்த உறவுகள் பின்னர் சக்திவாய்ந்த குறுக்கு-அட்டவணை வினவல்களைச் செய்யலாம், இது சேரும் என அறியப்படுகிறது.

டேட்டாபேஸ் உறவுகளின் வகைகள்

தரவுத்தள உறவுகளின் மூன்று வெவ்வேறு வகைகள் உள்ளன, ஒவ்வொன்றும் உறவுகளில் தொடர்பு கொள்ளக்கூடிய அட்டவணை வரிசைகளின் எண்ணிக்கையை பொறுத்து அமைந்துள்ளது. இந்த மூன்று உறவு வகைகள் ஒவ்வொன்றிலும் இரண்டு அட்டவணைகள் உள்ளன.

  • ஒன்று முதல் ஒரு உறவு முதல் அட்டவணையில் உள்ள ஒவ்வொரு இடுகைக்கும் ஒரே மாதிரியும், ஒரே அட்டவணையில் இரண்டாவது அட்டவணையில் இருக்கும்போது ஏற்படும். ஒரே ஒரு அட்டவணையில் உள்ள அனைத்து தகவல்களையும் வெறுமனே வைத்துக்கொள்வது மிகவும் திறமையானது என்பதால் ஒருவரிடமிருந்து ஒரு உறவு அரிதாகவே பயன்படுத்தப்படுகிறது. சில தரவுத்தள வடிவமைப்பாளர்கள் இந்த உறவை பயன்படுத்தி மற்றொரு அட்டவணையில் இருந்து தரவின் துணைக்குழுவைக் கொண்ட அட்டவணையை உருவாக்குவதன் மூலம் பயன்படுத்துகின்றனர்.
  • ஒன்று முதல் பல உறவுகள் தரவுத்தள உறவு மிகவும் பொதுவான வகை. அட்டவணை A இல் உள்ள ஒவ்வொரு பதிவும் அட்டவணை B இல் உள்ள ஒன்று அல்லது அதற்கு மேற்பட்ட பதிவைக் குறிக்கும் போது அவை நிகழ்கின்றன, ஆனால் அட்டவணை B இல் உள்ள ஒவ்வொன்றும் அட்டவணையில் A. ஒரே ஒரு பதிவுக்கு ஒத்துப்போகிறது. எடுத்துக்காட்டாக, ஒரு தொடக்கநிலை பள்ளியில் ஆசிரியரின் அட்டவணை மற்றும் மாணவர் அட்டவணையில் உள்ள உறவு ஒவ்வொரு மாணவருக்கும் ஒரு ஆசிரியர் மட்டுமே இருப்பதால், ஒவ்வொரு ஆசிரியருக்கும் பல மாணவர்கள் இருக்கிறார்கள். இந்த ஒரு முதல் பல வடிவமைப்பு நகல் தரவு நீக்க உதவுகிறது.
  • பல-பல உறவுகள் அட்டவணை A இல் உள்ள ஒவ்வொரு பதிவும் அட்டவணை B இல் உள்ள ஒன்று அல்லது அதற்கு மேற்பட்ட பதிவுகளை குறிக்கும் போது, ​​அட்டவணை B இல் உள்ள ஒவ்வொரு பதிவும் அட்டவணை A. இல் உள்ள ஒன்று அல்லது அதற்கு மேற்பட்ட பதிவை ஒத்துள்ளது. உதாரணமாக, ஆசிரியர்களுக்கும் ஒரு பாடநெறிகளுக்கும் இடையில் உள்ள உறவு பல- ஒவ்வொரு ஆசிரியருக்கும் ஒரு பாடத்தை விட அறிவுறுத்தலாக இருக்கலாம், மேலும் ஒவ்வொரு பாடமும் ஒன்றுக்கு மேற்பட்ட பயிற்றுவிப்பாளர்களுக்கு இருக்கலாம்.

சுய குறிப்பு உறவுகள்: ஒரு சிறப்பு வழக்கு

இதில் ஒரே ஒரு அட்டவணை மட்டுமே இருக்கும்போது சுய-உறவு உறவுகள் ஏற்படும். ஒவ்வொரு ஊழியரின் மேற்பார்வையாளரும் பற்றிய தகவலைக் கொண்ட ஊழியர் அட்டவணையில் ஒரு பொதுவான எடுத்துக்காட்டு. ஒவ்வொரு மேற்பார்வையாளரும் ஒரு பணியாளர் மற்றும் அவரின் சொந்த மேற்பார்வையாளர். இந்த விஷயத்தில், ஒவ்வொரு பணியாளருக்கும் ஒரு மேற்பார்வையாளர் இருப்பதால், ஒவ்வொன்றிற்கும் அதிகமான சுய-உறவு உறவு உள்ளது, ஆனால் ஒவ்வொரு மேற்பார்வையாளருக்கும் மேற்பட்ட ஊழியர்கள் இருக்கலாம்.

வெளிநாட்டு விசைகளுடன் உறவுகளை உருவாக்குதல்

ஒரு வெளிநாட்டு விசையை குறிப்பிடுவதன் மூலம் அட்டவணைகள் இடையே நீங்கள் உறவுகளை உருவாக்கிக் கொள்கிறீர்கள். அட்டவணைகள் தொடர்புடையவை தொடர்பான தொடர்புடைய தரவுத்தளத்தை இந்த விசை சொல்கிறது. பல சந்தர்ப்பங்களில், அட்டவணையில் A இல் உள்ள பத்தியில் அட்டவணை B இல் இருந்து குறிப்பிடப்பட்ட முதன்மை விசைகள் உள்ளன.

ஆசிரியர்கள் மற்றும் மாணவர்களின் அட்டவணையின் உதாரணத்தை மீண்டும் கவனியுங்கள். ஆசிரியரின் அட்டவணையில் ஒரு ஐடி, ஒரு பெயர் மற்றும் ஒரு பாடநூல் உள்ளது:

ஆசிரியர்கள்
InstructorIDTeacher_Nameகோர்ஸ்
001ஜான் டோஆங்கிலம்
002ஜேன் ஸ்கோமிகணித

மாணவர்கள் அட்டவணையில் ஒரு ஐடி, பெயர் மற்றும் ஒரு வெளிநாட்டு விசை நெடுவரிசை அடங்கும்:

மாணவர்கள்
மாணவர் அடையாளம்மாணவன் பெயர்Teacher_FK
0200லோவல் ஸ்மித்001
0201பிரையன் ஷார்ட்001
0202கார்க்கி மெண்டீஸ்002
0203மோனிகா ஜோன்ஸ்001

நெடுவரிசை Teacher_FK ஆசிரியர்களின் அட்டவணையில் ஒரு பயிற்றுவிப்பாளரின் முதன்மை முக்கிய மதிப்பை மாணவர் அட்டவணையில் குறிப்பிடுகிறது.

அடிக்கடி, தரவுத்தள வடிவமைப்பாளர்கள் பிக் பெயரில் "பி.கே" அல்லது "எஃப்.கே" பயன்படுத்துவார்கள், இது ஒரு முதன்மை விசை அல்லது வெளிநாட்டு விசை நெடுவரிசையை எளிதில் அடையாளம் காணும்.

இந்த இரண்டு அட்டவணைகள் ஆசிரியர்களுக்கும் மாணவர்களுக்கும் இடையேயான பல-உறவுகளை விளக்குகின்றன என்பதைக் கவனியுங்கள்.

உறவுகள் மற்றும் மறுபயன்பாட்டு ஒருங்கிணைப்பு

ஒரு அட்டவணையில் ஒரு வெளிநாட்டு விசை சேர்க்கப்பட்டவுடன், நீங்கள் இரண்டு டேபிள்களுக்கு இடையில் குறிப்பிட்டுள்ள ஒருமைப்பொருளை நிர்வகிக்கும் ஒரு தரவுத்தள கட்டுப்பாட்டு உருவாக்க முடியும். அட்டவணைகளுக்கு இடையில் உள்ள உறவுகள் நிலையானதாக இருப்பதை இது உறுதி செய்கிறது. ஒரு அட்டவணையில் மற்றொரு அட்டவணையில் ஒரு வெளிநாட்டு விசை இருக்கும்போது, ​​அட்டவணையில் பி எந்த வெளிநாட்டு விசை மதிப்பும் அட்டவணை A.

உறவுகளை செயல்படுத்துதல்

உங்கள் தரவுத்தளத்தை பொறுத்து, நீங்கள் பல்வேறு வழிகளில் அட்டவணைகள் இடையே உறவுகளை செயல்படுத்த. மைக்ரோசாஃப்ட் அக்சஸ் ஒரு வழிகாட்டி அளிக்கிறது, இது அட்டவணையை இணைக்கவும், பரிந்துரைக்கத்தக்க ஒருமைப்பாட்டை செயல்படுத்தவும் எளிதாக அனுமதிக்கிறது.

நீங்கள் SQL நேரடியாக எழுதுகிறீர்களானால், முதன்முதலாக முக்கிய ID ஆக ஐடி நெடுவரிசையை அறிவிப்பதன் மூலம் முதலில் அட்டவணை ஆசிரியர்களை உருவாக்கலாம்:

TABLE ஆசிரியர்களை உருவாக்கவும்

பயிற்றுவிப்பாளர் INT INT AUTO_INCREMENT முதன்மையான விசை, Teacher_Name VARCHAR (100), பாடநூல் (100));

நீங்கள் மாணவர் அட்டவணையை உருவாக்கும் போது, ​​ஆசிரியரின் அட்டவணையில் உள்ள பயிற்றுவிப்பாளரின் பத்தியில் குறிப்பிடும் ஒரு வெளிநாட்டு விசை என்று ஆசிரியர்_எஃப்.கே நிரலை அறிவிக்கிறீர்கள்:

அட்டவணை மாணவர்களை உருவாக்கு மாணவர் ID INT AUTO_INCREMENT முதன்மையான விசை, Student_Name VARCHAR (100), Teacher_FK INT, வெளிநாட்டு விசை (Teacher_FK) ஆசிரியர்கள் ஆசிரியர்கள் (பயிற்றுவிப்பாளர்)));

அட்டவணையில் சேர உறவுகளைப் பயன்படுத்துதல்

உங்கள் தரவுத்தளத்தில் நீங்கள் ஒன்று அல்லது அதற்கு மேற்பட்ட உறவுகளை உருவாக்கியிருந்தால், பல அட்டவணைகளிலிருந்து தகவலை இணைக்க SQL சேமிக்கும் வினவல்களைப் பயன்படுத்தி அவர்களின் அதிகாரத்தை நீங்கள் செலுத்தலாம். சேர மிகவும் பொதுவான வகை ஒரு SQL INNER சேர, அல்லது ஒரு எளிய சேர உள்ளது. இந்த வகை சேர பல அட்டவணையில் இருந்து சேரும் நிலையை சந்திக்கும் அனைத்து பதிவுகளையும் வழங்குகிறது.உதாரணமாக, இந்த JOIN நிபந்தனை Student_Name, Teacher_Name, மற்றும் மாணவர் அட்டவணையில் உள்ள வெளிநாட்டு விசையை ஆசிரியர்களின் மேஜையில் முக்கிய குறியீட்டைக் கொண்டிருக்கும் பாடநெறியை மீண்டும் வரும்.

மாணவர்களை தேர்வு செய்யவும். Student_Name, Teachers.Teacher_Name, Teachers.Courseமாணவர்கள்INNER JOIN ஆசிரியர்கள்மாணவர்களுக்கு Teacher_FK = Teachers.InstructorID;

இந்த அறிக்கை ஒரு மாதிரி ஒன்றை உருவாக்குகிறது:

SQL சேர அறிக்கையில் இருந்து திரும்பிய அட்டவணை

மாணவர் பெயர்