Skip to main content

डेटाबेस में बहुगुणित निर्भरता

श्री हॉक - फ्लेक्स पोमेड - लहरदार बाल शैली करने के लिए कैसे (जून 2026)

श्री हॉक - फ्लेक्स पोमेड - लहरदार बाल शैली करने के लिए कैसे (जून 2026)
Anonim

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

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

कार्यात्मक निर्भरता बनाम बहुगुणित निर्भरता

बहुगुणित निर्भरता को समझने के लिए, यह एक कार्यात्मक निर्भरता की समीक्षा करने में मददगार है।

यदि कोई विशेषता एक्स विशिष्ट रूप से एक विशेषता वाई निर्धारित करता है, तो वाई एक्स पर कार्यात्मक रूप से निर्भर है। यह एक्स -> वाई के रूप में लिखा गया है। उदाहरण के लिए, नीचे दी गई छात्र तालिका में, Student_Name मेजर को निर्धारित करता है:

छात्र
छात्र का नामप्रमुख
रविकला इतिहास
बेथरसायन विज्ञान

यह कार्यात्मक निर्भरता लिखी जा सकती है: Student_Name -> मेजर . प्रत्येक छात्र_नाम बिल्कुल एक मेजर निर्धारित करता है और नहीं।

यदि आप डेटाबेस को इन छात्रों को लेने वाले खेलों को ट्रैक करने के लिए चाहते हैं, तो आपको लगता है कि ऐसा करने का सबसे आसान तरीका यह है कि खेल नामक एक और कॉलम जोड़ें:

छात्र
छात्र का नामप्रमुखखेल
रविकला इतिहासफुटबॉल
रविकला इतिहासवालीबाल
रविकला इतिहासटेनिस
बेथरसायन विज्ञानटेनिस
बेथरसायन विज्ञानफुटबॉल

यहां समस्या यह है कि रवि और बेथ दोनों कई खेल खेलते हैं। हर अतिरिक्त खेल के लिए एक नई पंक्ति जोड़ना आवश्यक है।

इस तालिका ने बहुगुणित निर्भरता पेश की है क्योंकि प्रमुख और खेल एक-दूसरे से स्वतंत्र हैं लेकिन दोनों छात्र पर निर्भर हैं।

यह एक साधारण उदाहरण है और आसानी से पहचान योग्य है, लेकिन एक बहुविकल्पीय निर्भरता एक बड़े, जटिल डेटाबेस में एक समस्या बन सकती है।

एक बहुविकल्पीय निर्भरता एक्स -> -> वाई लिखा गया है। इस मामले में:

छात्र का नाम ->-> प्रमुखछात्र का नाम->-> खेल

इसे "Student_Name multidetermines Major" और "Student_Name multidetermines Sport" के रूप में पढ़ा जाता है।

एक बहुविकल्पीय निर्भरता के लिए हमेशा कम से कम तीन गुणों की आवश्यकता होती है क्योंकि इसमें कम से कम दो गुण होते हैं जो तीसरे पर निर्भर होते हैं।

बहुगुणित निर्भरता और सामान्यीकरण

एक बहुविकल्पीय निर्भरता वाली एक तालिका चौथी सामान्य प्रपत्र (4 एनके) के सामान्यीकरण मानक का उल्लंघन करती है क्योंकि यह अनावश्यक अनावश्यकता उत्पन्न करती है और असंगत डेटा में योगदान दे सकती है। इसे 4 एनएफ तक लाने के लिए, इस जानकारी को दो तालिकाओं में तोड़ना आवश्यक है।

नीचे दी गई तालिका में छात्र_नाम -> मेजर, और कोई बहुविकल्पीय निर्भरता की कार्यात्मक निर्भरता नहीं है:

छात्र और मजदूर
छात्र का नामप्रमुख
रविकला इतिहास
रविकला इतिहास
रविकला इतिहास
बेथरसायन विज्ञान
बेथरसायन विज्ञान

हालांकि इस तालिका में Student_Name की एक कार्यात्मक निर्भरता भी है -> खेल:

छात्र और खेल
छात्र का नामखेल
रविफुटबॉल
रविवालीबाल
रविटेनिस
बेथटेनिस
बेथफुटबॉल

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