संबंध (डेटाबेस)

डेटाबेस सिद्धांत में एक संबंध, जैसा कि मूल रूप से ईएफ कॉड द्वारा परिभाषित किया गया है। एफ कॉड, टुपल्स (d1, d2, ..., dn) का समुच्चय (गणित) है। जहां प्रत्येक तत्व dj एक डेटा डोमेन Dj का सदस्य है। कॉड की मूल परिभाषा के अतिरिक्त, और गणित में सामान्य परिभाषा के विपरीत, संबंध के ट्यूपल्स के तत्वों के लिए कोई क्रम नहीं है। इसके अतिरिक्त, प्रत्येक तत्व को विशेषता मान कहा जाता है। विशेषता नाम डोमेन के साथ जोड़ा जाता है (आजकल अधिक सामान्यतः प्रकार या डेटा प्रकार के रूप में जाना जाता है)। विशेषता मान उस विशेषता के डोमेन के तत्व के साथ जोड़ा गया विशेषता नाम है, और टपल विशेषता मानों का समुच्चय है जिसमें दो अलग-अलग तत्वों का एक ही नाम नहीं है। इस प्रकार, कुछ खातों में, टपल को फ़ंक्शन के रूप में वर्णित किया जाता है, जो नामों को मानों से मैप करता है।।

विशेषता का समुच्चय जिसमें दो अलग-अलग तत्वों का एक ही नाम नहीं होता है, हेडिंग कहलाता है। उपरोक्त परिभाषाओं से यह पता चलता है कि प्रत्येक ट्यूपल के लिए अद्वितीय शीर्षक से मेल खाता है, ट्यूपल से नामों का समुच्चय होने के नाते, उन डोमेन के साथ जोड़ा जाता है जहां से ट्यूपल के डोमेन तत्व लिए जाते हैं। टुपल्स का समुच्चय जो सभी एक ही शीर्षक के अनुरूप होते हैं, उन्हें निकाय कहा जाता है। संबंध इस प्रकार निकाय के साथ जोड़ा गया शीर्षक है, संबंध का शीर्षक उसके शरीर में प्रत्येक टपल का शीर्षक भी है। शीर्षक बनाने वाली विशेषताओं की संख्या को डिग्री कहा जाता है, जो शब्द टुपल्स और संबंधों पर भी प्रयुक्त होता है। शब्द n-tuple डिग्री n (n ≥ 0) के टपल को संदर्भित करता है।

ए एफ कॉड ने संबंध शब्द का प्रयोग परिमित संबंध के गणितीय अर्थ में n समुच्चय S1, S2, .... ,Sn के कुछ समुच्चय पर टपल्स के समुच्चय के रूप में किया है। इस प्रकार, n-ary संबंध की व्याख्या क्लोज्ड-वर्ल्ड धारणा के अनुसार की जाती है। क्लोज्ड-वर्ल्ड धारणा, कुछ n-adic प्रेडिकेट (गणितीय तर्क) के विस्तार के रूप में: सभी और केवल वे n-tuples जिनके मूल्य, संबंधित मुक्त के लिए प्रतिस्थापित विधेय में वेरिएबल्स, उपज प्रस्ताव जो सही हैं, संबंध में दिखाई देते हैं।

संबंध स्कीमा शब्द उस शीर्षक के संदर्भ में परिभाषित बाधाओं के समुच्चय के साथ जोड़े गए शीर्षक को संदर्भित करता है। इस प्रकार संबंध को संबंध स्कीमा की तात्कालिकता के रूप में देखा जा सकता है यदि इसमें उस स्कीमा का शीर्षक है और यह प्रयुक्त बाधाओं को संतुष्ट करता है।

कभी-कभी नाम सम्मिलित करने के लिए संबंध स्कीमा लिया जाता है। संबंधपरक डेटाबेस परिभाषा (डेटाबेस स्कीमा, जिसे कभी-कभी संबंधपरक स्कीमा के रूप में संदर्भित किया जाता है) को इस प्रकार नामित संबंध स्कीमा के संग्रह के रूप में माना जा सकता है।

कार्यान्वयन में, प्रत्येक विशेषता का डोमेन प्रभावी रूप से एक डेटा प्रकार होता है और नामित संबंध स्कीमा प्रभावी रूप से गनर (संक्षिप्त रूप में रिल्वर) है।

उदाहरण
नीचे एक संबंध का उदाहरण दिया गया है जिसमें तीन नामित विशेषताएँ हैं: पूर्णांको के डोमेन से 'आईडी', और स्ट्रिंग (कंप्यूटर विज्ञान) के डोमेन से 'नाम' और 'पता':

मुक्त वेरिएबल्सों को निरूपित करने के लिए विशेषता नामों का उपयोग करते हुए, इस संबंध के लिए विधेय हो सकता है, कर्मचारी संख्या आईडी को नाम के रूप में जाना जाता है और पता पर रहता है। संबंध की परीक्षा हमें बताती है कि केवल चार टुपल्स हैं जिनके लिए विधेय सत्य है। इसलिए, उदाहरण के लिए, कर्मचारी 102 को केवल इसी नाम से जाना जाता है, योनेज़ावा अकिनोरी, और नाहा, ओकिनावा के अतिरिक्त कहीं और नहीं रहता है। साथ ही, दिखाए गए चार कर्मचारियों के अतिरिक्त कोई अन्य कर्मचारी नहीं है, जिसका नाम और पता दोनों हो।

'निकाय' की परिभाषा के अनुसार, किसी निकाय के टुपल्स किसी विशेष क्रम में प्रकट नहीं होते हैं - कोई यह नहीं कह सकता 'मुराटा मकोतो' का टुपल 'मात्सुमोतो युकिहिरो' के टुपल से ऊपर है, न ही कोई कह सकता है 'योनेज़ावा का टपल' अकिनोरी' पहला टपल है। समान टिप्पणी एसक्यूएल तालिका की पंक्तियों पर प्रयुक्त होती है।

'शीर्षक' की परिभाषा के अनुसार, किसी तत्व के गुण किसी विशेष क्रम में प्रकट नहीं होते हैं, न ही, इसलिए टपल के तत्व करते हैं। इसी तरह की टिप्पणी यहां एसक्यूएल पर प्रयुक्त नहीं होती है, जो तालिका के कॉलम के लिए ऑर्डरिंग को परिभाषित करती है।

विशेष क्रम में प्रकट नहीं होते हैं, न ही, इसलिए टपल के तत्व करते हैं। इसी तरह की टिप्पणी यहां एसक्यूएल पर प्रयुक्त नहीं होती है, जो तालिका के कॉलम के लिए ऑर्डरिंग को परिभाषित करती है।

संबंध वेरिएबल्स
वास्तविक विश्वमें परिवर्तनों के उत्तर में डेटाबेस को अद्यतन करने के उद्देश्यों के लिए रिलेशनल डेटाबेस में रिलेशन वेरिएबल्स (रिलेवर्स) नामित होते हैं। एकल रिल्वर के लिए अद्यतन उस वेरिएबल्स को निर्दिष्ट संबंध के मुख्य भाग को टुपल्स के अलग समुच्चय द्वारा प्रतिस्थापित करने का कारण बनता है। रेलवार्स को दो वर्गों में वर्गीकृत किया गया है: आधार संबंध वेरिएबल्स और व्युत्पन्न संबंध वेरिएबल्स, बाद वाले को आभासी रेलवार्स के रूप में भी जाना जाता है किन्तु सामान्यतः अल्पावधि दृश्य द्वारा संदर्भित किया जाता है।

एक आधार संबंध वेरिएबल्स एक संबंध वेरिएबल्स है जो किसी अन्य संबंध वेरिएबल्स से व्युत्पन्न नहीं होता है। एसक्यूएल में बेस टेबल (डेटाबेस) शब्द लगभग बेस रिलेशन वेरिएबल के बराबर है।

एक दृश्य को संबंधपरक बीजगणित या संबंधपरक कलन के संचालकों का उपयोग करके व्यंजक द्वारा परिभाषित किया जा सकता है। ऐसी अभिव्यक्ति एक या एक से अधिक संबंधों पर चलती है और जब मूल्यांकन किया जाता है तो एक अन्य संबंध उत्पन्न होता है। परिणाम को कभी-कभी व्युत्पन्न संबंध के रूप में संदर्भित किया जाता है जब ऑपरेंड डेटाबेस वेरिएबल्स के लिए असाइन किए गए संबंध होते हैं। ऐसे व्यंजक को नाम देकर दृश्य को परिभाषित किया जाता है, जैसे कि नाम को बाद में वेरिएबल्स नाम के रूप में उपयोग किया जा सकता है। (ध्यान दें कि तब व्यंजक में कम से कम एक आधार संबंध वेरिएबल्स का उल्लेख होना चाहिए।)

डेटा परिभाषा भाषा (डीडीएल ) का उपयोग करके, यह आधार संबंध वेरिएबल्स को परिभाषित करने में सक्षम है। एसक्यूएल में,  सिंटैक्स का उपयोग बेस टेबल को परिभाषित करने के लिए किया जाता है। निम्नलिखित उदाहरण है।

डेटा डेफिनिशन लैंग्वेज (डीडीएल ) का उपयोग व्युत्पन्न संबंध वेरिएबल्स को परिभाषित करने के लिए भी किया जाता है। एसक्यूएल में,  सिंटैक्स का उपयोग व्युत्पन्न संबंध वेरिएबल्स को परिभाषित करने के लिए किया जाता है। निम्नलिखित उदाहरण है।

यह भी

 * रेल्वर | रेल्वर (संबंधपरक वेरिएबल्स)