साहचर्य इकाई: Difference between revisions

From Vigyanwiki
No edit summary
No edit summary
Line 2: Line 2:
एक साहचर्य इकाई [[संबंधपरक मॉडल]] और इकाई-संबंध मॉडल|इकाई-संबंध सिद्धांत में प्रयुक्त शब्द है। संबंधपरक डेटाबेस को अनेक-से-अनेक (डेटा मॉडल)|अनेक-से-अनेक संबंधों को हल करने के लिए आधार संबंध (या आधार तालिका) के कार्यान्वयन की आवश्यकता होती है. इस तरह की इकाई का प्रतिनिधित्व करने वाला आधार संबंध अनौपचारिक रूप से एक साहचर्य तालिका कहलाता है।  [[Image:Associate_Entity.png|frame|एक साहचर्य इकाई ([[पीटर चेन]] अंकन का उपयोग करके)]]जैसा कि ऊपर उल्लेख किया गया है, साहचर्य संस्थाओं को साहचर्य तालिकाओं का उपयोग करके डेटाबेस संरचना में प्रयुक्त किया जाता है, जो कि ऐसी तालिकाएँ होती हैं जिनमें एक ही डेटाबेस के अंदरसमान या भिन्न डेटाबेस तालिकाओं के स्तंभों के संदर्भ हो सकते हैं।
एक साहचर्य इकाई [[संबंधपरक मॉडल]] और इकाई-संबंध मॉडल|इकाई-संबंध सिद्धांत में प्रयुक्त शब्द है। संबंधपरक डेटाबेस को अनेक-से-अनेक (डेटा मॉडल)|अनेक-से-अनेक संबंधों को हल करने के लिए आधार संबंध (या आधार तालिका) के कार्यान्वयन की आवश्यकता होती है. इस तरह की इकाई का प्रतिनिधित्व करने वाला आधार संबंध अनौपचारिक रूप से एक साहचर्य तालिका कहलाता है।  [[Image:Associate_Entity.png|frame|एक साहचर्य इकाई ([[पीटर चेन]] अंकन का उपयोग करके)]]जैसा कि ऊपर उल्लेख किया गया है, साहचर्य संस्थाओं को साहचर्य तालिकाओं का उपयोग करके डेटाबेस संरचना में प्रयुक्त किया जाता है, जो कि ऐसी तालिकाएँ होती हैं जिनमें एक ही डेटाबेस के अंदरसमान या भिन्न डेटाबेस तालिकाओं के स्तंभों के संदर्भ हो सकते हैं।


[[File:mapping_table_concept.png|right|मैपिंग तालिका की अवधारणा]]एक साहचर्य (या जंक्शन) तालिका प्रत्येक डेटा तालिका की [[प्राथमिक कुंजी]] (पीके) को संदर्भित करके दो या दो से अधिक तालिकाओं को एक साथ मैप करती है। असल में, इसमें कई [[विदेशी कुंजी]] (एफके) सम्मिलित हैं, प्रत्येक जंक्शन तालिका से अलग-अलग डेटा तालिका तक कई-से-एक रिश्ते में हैं। साहचर्य तालिका का पीके सामान्यतः स्वयं एफके कॉलम से बना होता है।
[[File:mapping_table_concept.png|right|मैपिंग तालिका की अवधारणा]]एक साहचर्य (या जंक्शन) तालिका प्रत्येक डेटा तालिका की [[प्राथमिक कुंजी]] (पीके) को संदर्भित करके दो या दो से अधिक तालिकाओं को एक साथ मैप करती है। असल में, इसमें कई [[विदेशी कुंजी]] (एफके) सम्मिलित हैं, प्रत्येक जंक्शन तालिका से अलग-अलग डेटा तालिका तक कई-से-एक रिश्ते में हैं। साहचर्य तालिका का पीके सामान्यतः स्वयं एफ के स्तंभ से बना होता है।


साहचर्य तालिकाओं को बोलचाल की भाषा में कई नामों से जाना जाता है, जिनमें संगठन तालिका, पुल तालिका, प्रति संदर्भ तालिका, क्रॉसवॉक, मध्यस्थ तालिका, प्रतिच्छेदन तालिका, मिलान तालिका, जंक्शन तालिका, संपर्क तालिका, लिंकिंग तालिका, कई-से-कई रिज़ॉल्वर, मैप तालिका सम्मिलित हैं। , मैपिंग तालिका, पेयरिंग तालिका, पिवट तालिका (जैसा कि [[laravel|लारवेल]] में गलत विधि से उपयोग किया गया है - पिवट तालिका के सही उपयोग के साथ भ्रमित नहीं होना चाहिए), या संक्रमण तालिका।
साहचर्य तालिकाओं को बोलचाल की भाषा में कई नामों से जाना जाता है, जिनमें संगठन तालिका, पुल तालिका, प्रति संदर्भ तालिका, क्रॉसवॉक, मध्यस्थ तालिका, प्रतिच्छेदन तालिका, मिलान तालिका, जंक्शन तालिका, संपर्क तालिका, लिंकिंग तालिका,अनेक-से-अनेक समाधानकर्ता, मैप तालिका सम्मिलित हैं। , मैपिंग तालिका, पेयरिंग तालिका, पिवट तालिका (जैसा कि [[laravel|लारवेल]] में गलत विधि से उपयोग किया गया है - पिवट तालिका के सही उपयोग के साथ भ्रमित नहीं होना चाहिए), या संक्रमण तालिका।


== साहचर्य तालिकाओं का उपयोग करना ==
== साहचर्य तालिकाओं का उपयोग करना ==


एक साहचर्य तालिका के व्यावहारिक उपयोग का उदाहरण उपयोगकर्ताओं को अनुमतियाँ प्रदान करना होगा। कई उपयोगकर्ता हो सकते हैं, और प्रत्येक उपयोगकर्ता को शून्य या अधिक अनुमतियाँ सौंपी जा सकती हैं। एक या अधिक उपयोगकर्ताओं को व्यक्तिगत अनुमतियां दी जा सकती हैं।
एक साहचर्य तालिका के व्यावहारिक उपयोग का उदाहरण उपयोगकर्ताओं को अनुमतियाँ प्रदान करना होगा। कई उपयोगकर्ता हो सकते हैं, और प्रत्येक उपयोगकर्ता को शून्य या अधिक अनुमतियाँ सौंपी जा सकती हैं। एक या अधिक उपयोगकर्ताओं को व्यक्तिगत अनुमतियां दी जा सकती हैं।




तालिका उपयोगकर्ता बनाएं (
तालिका उपयोगकर्ता बनाएं (
    उपयोगकर्ता लॉगिन varchar(50) प्राथमिक कुंजी,
  उपयोगकर्ता लॉगिन वैरकैर(50) प्राथमिक कुंजी,
    उपयोगकर्ता पासवर्ड varchar(50) न्यूल नहीं,
  उपयोगकर्ता पासवर्ड वैरकैर(50) न्यूल नहीं,
    उपयोगकर्ता नाम वर्कर (50) पूर्ण नहीं है
  उपयोगकर्ता नाम वर्कर (50) पूर्ण नहीं है
);
);


तालिका अनुमतियां बनाएं (
तालिका अनुमतियां बनाएं (
    अनुमति कुंजी varchar(50) प्राथमिक कुंजी,
  अनुमति कुंजी वैरकैर(50) प्राथमिक कुंजी,
    अनुमति विवरण varchar(500) अशक्त नहीं
  अनुमति विवरण वैरकैर(500) अशक्त नहीं
);
);


Line 25: Line 25:


तालिका बनाएं उपयोगकर्ता अनुमतियां (
तालिका बनाएं उपयोगकर्ता अनुमतियां (
    उपयोगकर्ता लॉगिन varchar(50) संदर्भ उपयोगकर्ता (उपयोगकर्ता लॉगिन),
  उपयोगकर्ता लॉगिन वैरकैर(50) संदर्भ उपयोगकर्ता (उपयोगकर्ता लॉगिन),
    अनुमति कुंजी varchar(50) संदर्भ अनुमतियाँ (अनुमति कुंजी),
  अनुमति कुंजी वैरकैर(50) संदर्भ अनुमतियाँ (अनुमति कुंजी),
    प्राथमिक कुंजी (उपयोगकर्ता लॉगिन, अनुमति कुंजी)
  प्राथमिक कुंजी (उपयोगकर्ता लॉगिन, अनुमति कुंजी)
);
);


[[File:Junction Table.svg|center|दर्शाए गए संबंधों के साथ वर्णित तालिका स्कीमा का एक दृश्य चित्रण]]
[[File:Junction Table.svg|center|दर्शाए गए संबंधों के साथ वर्णित तालिका स्कीमा का एक दृश्य चित्रण]]
जंक्शन तालिका पर चयन (एसक्यूएल) -स्टेटमेंट में सामान्यतः जंक्शन तालिका के साथ मुख्य तालिका में सम्मिलित होना (एसक्यूएल) सम्मिलित होता है:
जंक्शन तालिका पर चयन (एसक्यूएल) -कथन में सामान्यतः जंक्शन तालिका के साथ मुख्य तालिका में सम्मिलित होना (एसक्यूएल) सम्मिलित होता है:


चुनें * उपयोगकर्ताओं से
चुनें * उपयोगकर्ताओं से
Line 41: Line 41:
जंक्शन तालिका में [[सम्मिलित करें (एसक्यूएल)]] में कई चरण सम्मिलित हैं: पहले मुख्य तालिका में सम्मिलित करना, फिर जंक्शन तालिका को अद्यतन करना।
जंक्शन तालिका में [[सम्मिलित करें (एसक्यूएल)]] में कई चरण सम्मिलित हैं: पहले मुख्य तालिका में सम्मिलित करना, फिर जंक्शन तालिका को अद्यतन करना।


- नया उपयोगकर्ता बनाना
- नया उपयोगकर्ता बनाना


उपयोगकर्ताओं में सम्मिलित करें (उपयोगकर्ता लॉगिन, उपयोगकर्ता पासवर्ड, उपयोगकर्ता नाम)
उपयोगकर्ताओं में सम्मिलित करें (उपयोगकर्ता लॉगिन, उपयोगकर्ता पासवर्ड, उपयोगकर्ता नाम)
Line 47: Line 47:
मान ('कुछ उपयोगकर्ता', 'गुप्त पासवर्ड', 'उपयोगकर्ता नाम');
मान ('कुछ उपयोगकर्ता', 'गुप्त पासवर्ड', 'उपयोगकर्ता नाम');


- नई अनुमति बनाना
- नई अनुमति बनाना


अनुमतियों में प्रवेश करें (अनुमति कुंजी, अनुमति विवरण)
अनुमतियों में प्रवेश करें (अनुमति कुंजी, अनुमति विवरण)

Revision as of 10:25, 23 February 2023

एक साहचर्य इकाई संबंधपरक मॉडल और इकाई-संबंध मॉडल|इकाई-संबंध सिद्धांत में प्रयुक्त शब्द है। संबंधपरक डेटाबेस को अनेक-से-अनेक (डेटा मॉडल)|अनेक-से-अनेक संबंधों को हल करने के लिए आधार संबंध (या आधार तालिका) के कार्यान्वयन की आवश्यकता होती है. इस तरह की इकाई का प्रतिनिधित्व करने वाला आधार संबंध अनौपचारिक रूप से एक साहचर्य तालिका कहलाता है।

एक साहचर्य इकाई (पीटर चेन अंकन का उपयोग करके)

जैसा कि ऊपर उल्लेख किया गया है, साहचर्य संस्थाओं को साहचर्य तालिकाओं का उपयोग करके डेटाबेस संरचना में प्रयुक्त किया जाता है, जो कि ऐसी तालिकाएँ होती हैं जिनमें एक ही डेटाबेस के अंदरसमान या भिन्न डेटाबेस तालिकाओं के स्तंभों के संदर्भ हो सकते हैं।

मैपिंग तालिका की अवधारणा

एक साहचर्य (या जंक्शन) तालिका प्रत्येक डेटा तालिका की प्राथमिक कुंजी (पीके) को संदर्भित करके दो या दो से अधिक तालिकाओं को एक साथ मैप करती है। असल में, इसमें कई विदेशी कुंजी (एफके) सम्मिलित हैं, प्रत्येक जंक्शन तालिका से अलग-अलग डेटा तालिका तक कई-से-एक रिश्ते में हैं। साहचर्य तालिका का पीके सामान्यतः स्वयं एफ के स्तंभ से बना होता है।

साहचर्य तालिकाओं को बोलचाल की भाषा में कई नामों से जाना जाता है, जिनमें संगठन तालिका, पुल तालिका, प्रति संदर्भ तालिका, क्रॉसवॉक, मध्यस्थ तालिका, प्रतिच्छेदन तालिका, मिलान तालिका, जंक्शन तालिका, संपर्क तालिका, लिंकिंग तालिका,अनेक-से-अनेक समाधानकर्ता, मैप तालिका सम्मिलित हैं। , मैपिंग तालिका, पेयरिंग तालिका, पिवट तालिका (जैसा कि लारवेल में गलत विधि से उपयोग किया गया है - पिवट तालिका के सही उपयोग के साथ भ्रमित नहीं होना चाहिए), या संक्रमण तालिका।

साहचर्य तालिकाओं का उपयोग करना

एक साहचर्य तालिका के व्यावहारिक उपयोग का उदाहरण उपयोगकर्ताओं को अनुमतियाँ प्रदान करना होगा। कई उपयोगकर्ता हो सकते हैं, और प्रत्येक उपयोगकर्ता को शून्य या अधिक अनुमतियाँ सौंपी जा सकती हैं। एक या अधिक उपयोगकर्ताओं को व्यक्तिगत अनुमतियां दी जा सकती हैं।


तालिका उपयोगकर्ता बनाएं (

 उपयोगकर्ता लॉगिन वैरकैर(50) प्राथमिक कुंजी,
 उपयोगकर्ता पासवर्ड वैरकैर(50) न्यूल नहीं,
 उपयोगकर्ता नाम वर्कर (50) पूर्ण नहीं है

);

तालिका अनुमतियां बनाएं (

 अनुमति कुंजी वैरकैर(50) प्राथमिक कुंजी,
 अनुमति विवरण वैरकैर(500) अशक्त नहीं

);

- यह जंक्शन तालिका है।

तालिका बनाएं उपयोगकर्ता अनुमतियां (

 उपयोगकर्ता लॉगिन वैरकैर(50) संदर्भ उपयोगकर्ता (उपयोगकर्ता लॉगिन),
 अनुमति कुंजी वैरकैर(50) संदर्भ अनुमतियाँ (अनुमति कुंजी),
 प्राथमिक कुंजी (उपयोगकर्ता लॉगिन, अनुमति कुंजी)

);

दर्शाए गए संबंधों के साथ वर्णित तालिका स्कीमा का एक दृश्य चित्रण

जंक्शन तालिका पर चयन (एसक्यूएल) -कथन में सामान्यतः जंक्शन तालिका के साथ मुख्य तालिका में सम्मिलित होना (एसक्यूएल) सम्मिलित होता है:

चुनें * उपयोगकर्ताओं से

(उपयोगकर्तालॉगिन) का उपयोग करके उपयोगकर्ता अनुमतियों में सम्मिलित हों;

यह सभी उपयोगकर्ताओं और उनकी अनुमतियों की सूची लौटाएगा।

जंक्शन तालिका में सम्मिलित करें (एसक्यूएल) में कई चरण सम्मिलित हैं: पहले मुख्य तालिका में सम्मिलित करना, फिर जंक्शन तालिका को अद्यतन करना।

- नया उपयोगकर्ता बनाना

उपयोगकर्ताओं में सम्मिलित करें (उपयोगकर्ता लॉगिन, उपयोगकर्ता पासवर्ड, उपयोगकर्ता नाम)

मान ('कुछ उपयोगकर्ता', 'गुप्त पासवर्ड', 'उपयोगकर्ता नाम');

- नई अनुमति बनाना

अनुमतियों में प्रवेश करें (अनुमति कुंजी, अनुमति विवरण)

मान ('कुंजी', 'कई अनुमतियों के लिए उपयोग की जाने वाली कुंजी');

- अंत में, जंक्शन को अपडेट करना

उपयोगकर्ताअनुमति में डालें (उपयोगकर्ता लॉगिन, अनुमति कुंजी)

मान ('कुछ उपयोगकर्ता', 'की');

विदेशी कुंजियों का उपयोग करते हुए, डेटाबेस स्वचालित रूप से उपयोगकर्ता अनुमति तालिका के मानों को अपनी स्वयं की तालिकाओं से हटा देगा।

यह भी देखें

संदर्भ

  • Hoffer, Jeffrey A.; Prescott, Mary B.; McFadden, Fred R. (2004). Modern Database Management (7th ed.). Prentice Hall. ISBN 978-0131453203.
  • Codd, E. F. (1970). "A Relational Model of Data for Large Shared Data Banks". Communications of the ACM. ACM. 13 (6): 377–387. doi:10.1145/362384.362685.