डेटाबेस अवलंबन काय आहेत?

डेटाबेस अवलंबन हा एक विषय आहे जो सहसा विद्यार्थ्यांना आणि डेटाबेस व्यावसायिकांना दोघांनाही फसवतो. सुदैवाने, ते अवघड नाही आणि बर्याच उदाहरणात वापरल्या जाऊ शकते. या लेखातील, आम्ही सामान्य डेटाबेस अवलंबन प्रकारांचे परीक्षण करतो.

डेटाबेस अवलंबने / कार्यात्मक अवलंबने

समान डेटाबेस टेबलमध्ये संग्रहित माहिती समान टेबलमध्ये संग्रहित केलेली इतर माहिती विशिष्टपणे निर्धारित करते तेव्हा डेटाबेसमध्ये अवलंबन येते. आपण हे असे नातेसंबंध म्हणून वर्णन करू शकता जेथे एका विशेषता (किंवा विशेषतांचा संच) ची किंमत जाणून घेणे पुरेसे आहे जे आपल्याला समान तक्त्यात दुसर्या विशेषता (किंवा विशेषतांचा संच) चे मूल्य सांगण्यास पुरेसे आहे

टेबलमध्ये असलेल्या गुणधर्मांमधील अवलंबन असे म्हणत आहे की त्या गुणधर्मांमधील कार्यशील अवलंबन आहे. डेटाबेसमध्ये अवलंबन असल्यास गुणधर्म ' बी' वर आधारित असणारी विशेषता 'ए' वर आधारित आहे, आपण ती "A -> B" म्हणून लिहू.

उदाहरणार्थ, सोशल सिक्युरिटी नंबर (एसएसएन) आणि नावाने कर्मचारी वैशिष्ट्यांची सूची असलेल्या टेबलमध्ये, असे म्हणता येईल की हे नाव एसएसएन (किंवा एसएसएन -> नाव) वर अवलंबून असते कारण एखाद्या कर्मचार्याचे नाव विशिष्टपणे त्यांच्या एसएसएन मधून निर्धारित केले जाऊ शकते. तथापि, रिव्हर्स स्टेटमेंट (नाव -> एसएसएन) हे खरे नाही कारण एकाहून अधिक कर्मचारी एकाच नावाचे असू शकतात परंतु भिन्न SSN

तुच्छ फंक्शनल अवलंबने

तुलनीय फंक्शनल अवलंबन तेव्हा उद्भवते जेव्हा आपण गुणधर्मांचा संग्रह असलेल्या एका विशेषतेवर कार्यात्मक अवलंबन वर्णन करतो ज्यात मूळ विशेषता समाविष्ट आहे. उदाहरणार्थ, "{A, B} -> B" " क्षुल्लक फंक्शनल अवलंबन " आहे , जसे की "{name, SSN} -> SSN" या प्रकारच्या कार्यात्मक अवलंबनला क्षुल्लक म्हणतात कारण ते सामान्य ज्ञानापेक्षा वेगळे केले जाऊ शकते. हे स्पष्ट आहे की जर तुम्हाला आधीच बी ची व्हॅल्यू माहित असेल, तर बी चे मूल्य विशिष्टतेने त्या ज्ञानाद्वारे निश्चित केले जाऊ शकते.

पूर्ण कार्यात्मक अवलंबन

पूर्ण कार्यात्मक अवलंबन तेव्हा होतो जेव्हा आपण फंक्शनल अवलंबनच्या आवश्यकतांची पूर्तता करतो आणि फंक्शनल अवलंबन विधानाच्या डाव्या बाजूवरील विशेषतांचे संच आणखी कमी केले जाऊ शकत नाहीत. उदाहरणार्थ, "{SSN, age} -> नाव" एक फंक्शनल अवलंबन आहे, परंतु हे संपूर्ण कार्यशील अवलंबन नाही कारण आपण अवलंबित्व संबंधांवर प्रभाव न पडता विधानाच्या डाव्या बाजूचे वय काढून टाकू शकता.

सक्रीय अवलंबन

परस्परविरोधी परस्परसंबंध असताना परस्परविरोधी अवलंबित्व उद्भवते. उदाहरणार्थ, "ए -> सी" ही ट्रांझिटिव्ह अवलंबन आहे जेव्हा ते खरे असते कारण "A -> B" आणि "B - C" दोन्ही सत्य आहेत.

बहुविध अवलंबून

बहुस्तरीय अवलंबन तेव्हा उद्भवतात जेव्हा टेबलमधील एक किंवा अधिक पंक्तीची उपस्थिती दर्शवते की त्याच सारणीमधील एक किंवा अधिक पंक्तीची उपस्थिती. उदाहरणार्थ, एखाद्या कार कंपनीची कल्पना करा जी अनेक कारचे मॉडेल तयार करते परंतु प्रत्येक मॉडेलच्या लाल आणि निळसर रंगांना नेहमी बनविते. जर तुमच्याकडे टेबल आहे ज्यामध्ये कंपनीचे नाव, रंग आणि प्रत्येक कारचे वर्ष असेल ज्या कंपनीचे उत्पादन असेल तर, त्या टेबलमध्ये बहुस्तरीय अवलंबन असते . जर विशिष्ट मॉडेलचे नाव आणि वर्ष निळ्यामध्ये एक पंक्ती असेल तर त्या समान कारच्या लाल आवृत्त्याशी सुसंगत अशी समान पंक्ती असणे आवश्यक आहे.

अवलंबनांचे महत्व

डेटाबेस अवलंबन हे समजून घेणे महत्त्वाचे आहे कारण ते डेटाबेस सामान्यीकरण मध्ये वापरल्या जाणा-या मूळ बिल्डिंग ब्लॉक प्रदान करतात . उदाहरणार्थ: