በውጭ ቁልፍ እና በዋና ቁልፍ መካከል ያለው ቁልፍ ልዩነት የውጪ ቁልፍ አምድ ወይም የአምዶች ስብስብ የአንደኛ ደረጃ ቁልፍ ወይም የሌላ ሠንጠረዥ የእጩ ቁልፍ ሲሆን ዋና ቁልፍ ደግሞ አምድ ወይም የአምዶች ስብስብ ነው። በሰንጠረዥ ውስጥ ያለውን ረድፍ በልዩ ሁኔታ ለመለየት ጥቅም ላይ ሊውል ይችላል።
አንድ ረድፍ ወይም የውሂብ ጎታ ውስጥ ያሉ የረድፎችን ስብስብ ለመለየት ወይም ለመድረስ የሚያገለግል አምድ ወይም የአምዶች ስብስብ ቁልፍ ይባላል። በግንኙነት ዳታቤዝ ውስጥ ዋናው ቁልፍ በሰንጠረዡ ውስጥ ያሉ የአምዶች ጥምረት የሠንጠረዡን ረድፍ ልዩ በሆነ መልኩ የሚለይ ነው። በተዛማጅ የውሂብ ጎታ ውስጥ የውጭ ቁልፍ ከሌላ ሰንጠረዥ ዋና ቁልፍ ጋር የሚዛመድ በሰንጠረዥ ውስጥ ያለ መስክ ነው።የውጭ ቁልፉ የማጣቀሻ ሠንጠረዦችን ለመሻገር ይጠቅማል።
የውጭ አገር ቁልፍ ምንድነው?
የውጭ ቁልፍ በሁለት ሰንጠረዦች መካከል ያለ የማጣቀሻ ገደብ ነው። በሌላ ሠንጠረዥ ውስጥ የአምዶች ስብስብን የሚያመለክት የማጣቀሻ ሰንጠረዥ ተብሎ የሚጠራው በአንድ ሠንጠረዥ ውስጥ አንድ አምድ ወይም የአምዶች ስብስብ ይለያል. የውጭ ቁልፍ ወይም በማጣቀሻ ሰንጠረዥ ውስጥ ያሉት ዓምዶች በተጠቀሰው ሠንጠረዥ ውስጥ ዋናው ቁልፍ ወይም የእጩ ቁልፍ (እንደ ዋና ቁልፍ ሊያገለግል የሚችል ቁልፍ) መሆን አለባቸው. ከዚህም በላይ የውጭ ቁልፎች መረጃዎችን በተለያዩ ሠንጠረዦች ማገናኘት ይፈቅዳሉ።ስለዚህ, የውጭ ቁልፉ በሚያመለክተው ሠንጠረዥ ውስጥ የማይታዩ እሴቶችን ሊይዝ አይችልም. ከዚያ የውጭ ቁልፍ የቀረበው ማጣቀሻ መረጃን በተለያዩ ሰንጠረዦች ለማገናኘት ይረዳል እና ይህ በተለመደው የውሂብ ጎታዎች አስፈላጊ ይሆናል. በማጣቀሻ ሠንጠረዥ ውስጥ ያሉ በርካታ ረድፎች በተጠቀሰው ሠንጠረዥ ውስጥ አንድ ረድፍ ሊያመለክቱ ይችላሉ።
ምስል 01፡ የውጭ ቁልፍ ካርታ ስራ
በANSI SQL መስፈርት፣የውጭ ቁልፍ ገደብ የውጭ ቁልፎችን ይገልጻል። ከዚህም በላይ ጠረጴዛውን በራሱ ሲፈጥሩ የውጭ ቁልፎችን መግለፅ ይቻላል. ሠንጠረዥ በርካታ የውጭ ቁልፎች ሊኖሩት ይችላል፣ እና የተለያዩ ሰንጠረዦችን መጥቀስ ይችላሉ።
ዋና ቁልፍ ምንድነው?
ዋና ቁልፍ በአምድ ወይም የአምዶች ጥምረት በተዛማጅ የውሂብ ጎታ ሠንጠረዥ ውስጥ ያለውን ረድፍ በልዩ ሁኔታ የሚገልጽ ነው። ሠንጠረዥ ቢበዛ አንድ ዋና ቁልፍ ሊኖረው ይችላል። ዋናው ቁልፍ ስውር ያልሆነን ገደብ ያስፈጽማል። ስለዚህ ዋና ቁልፍ ያለው አምድ በውስጡ NULL እሴቶች ሊኖሩት አይችልም። ዋናው ቁልፍ በሠንጠረዡ ውስጥ እንደ የማህበራዊ ዋስትና ቁጥር ልዩ የመሆኑ ዋስትና ያለው መደበኛ ባህሪ ሊሆን ይችላል ወይም በዳታቤዝ አስተዳደር ስርዓት እንደ ግሎባል ልዩ መለያ (GUID) በማይክሮሶፍት SQL አገልጋይ የተፈጠረ ልዩ እሴት ሊሆን ይችላል።
ስእል 02፡ ዋና ቁልፍ
ከተጨማሪ፣ በANSI SQL ስታንዳርድ ውስጥ ያለው ቀዳሚ ቁልፍ ገደብ ዋና ቁልፎችን ይገልጻል። ሰንጠረዡን ሲፈጥሩ ዋና ቁልፍን መግለፅም ይቻላል. ከዚህ በተጨማሪ SQL ዋና ቁልፍ ከአንድ ወይም ከዛ በላይ አምዶች እንዲሰራ ይፈቅዳል፣ እና በዋናው ቁልፍ ውስጥ የተካተተው እያንዳንዱ አምድ ባዶ እንዳልሆነ በተዘዋዋሪ ይገለጻል። ነገር ግን አንዳንድ የውሂብ ጎታ አስተዳደር ስርዓቶች ዋናውን ቁልፍ አምዶች በግልፅ ባዶ እንዳይሆኑ ማድረግ ይጠይቃሉ።
በውጭ አገር ቁልፍ እና በዋና ቁልፍ መካከል ያለው ልዩነት ምንድን ነው?
የውጭ ቁልፍ vs ዋና ቁልፍ |
|
የውጭ ቁልፍ በሁለት ሰንጠረዦች ውስጥ ባሉ መረጃዎች መካከል ያለውን ግንኙነት የሚያቀርብ ተዛማጅ የውሂብ ጎታ ሠንጠረዥ ውስጥ ያለ አምድ ወይም የአምዶች ቡድን ነው። | ዋና ቁልፍ ሁሉንም የሰንጠረዥ መዝገቦችን በልዩ ሁኔታ ለመለየት የሚያስችል ልዩ ተዛማጅ የውሂብ ጎታ ሠንጠረዥ አምድ ወይም የበርካታ አምዶች ጥምረት ነው። |
NULL | |
የውጭ ቁልፍ NULL እሴትን ይቀበላል። | ዋና ቁልፍ እሴት ባዶ ሊሆን አይችልም። |
የቁልፎች ቁጥር | |
ሠንጠረዥ በርካታ የውጭ ቁልፎች ሊኖሩት ይችላል። | ሠንጠረዥ ሊኖረው የሚችለው አንድ ዋና ቁልፍ ብቻ ነው። |
ብዜት | |
Tuples ለውጭ አገር ቁልፍ ባህሪ የተባዛ እሴት ሊኖራቸው ይችላል። | በግንኙነት ውስጥ ሁለት ቱፕሎች ለዋና ቁልፍ ባህሪ የተባዙ እሴቶች ሊኖራቸው አይችልም። |
ማጠቃለያ - የውጭ ቁልፍ vs ዋና ቁልፍ
በውጭ ቁልፍ እና በዋና ቁልፍ መካከል ያለው ልዩነት የውጪ ቁልፍ አምድ ወይም የአምዶች ስብስብ የአንደኛ ደረጃ ቁልፍ ወይም የሌላ ሠንጠረዥ የእጩ ቁልፍ ሲሆን ዋና ቁልፍ ደግሞ አምድ ወይም የአምዶች ስብስብ ነው። በሠንጠረዡ ውስጥ ያለውን ረድፍ በልዩ ሁኔታ ለመለየት ጥቅም ላይ ሊውል ይችላል።