फंक्शनल डिपेंडेंसी क्या है?
DBMS में फंक्शनल डिपेंडेंसी, जैसा कि नाम से पता चलता है, एक टेबल की विशेषताओं के बीच एक संबंध है जो एक-दूसरे पर निर्भर हैं। E. F. Codd द्वारा पेश किया गया, यह डेटा रिडंडेंसी को रोकने और खराब डिजाइन के बारे में जानने में मदद करता है।
अवधारणा को पूरी तरह से समझने के लिए, मान लीजिए P विशेषताओं A और B के साथ एक रिलेशन है। फंक्शनल डिपेंडेंसी को -> (तीर चिह्न) द्वारा दर्शाया जाता है।
तब निम्नलिखित तीर चिह्न के साथ विशेषताओं के बीच फंक्शनल डिपेंडेंसी को दर्शाएगा:
| A -> B |
उपरोक्त से पता चलता है:

उदाहरण
निम्नलिखित एक उदाहरण है जो फंक्शनल डिपेंडेंसी की अवधारणा को समझना आसान बना देगा:
हमारे पास दो विशेषताओं वाला एक <Department> टेबल है: DeptId और DeptName।
| DeptId = Department ID DeptName = Department Name |
DeptId हमारी प्राइमरी की है। यहां, DeptId DeptName विशेषता को विशिष्ट रूप से पहचानता है। ऐसा इसलिए है क्योंकि यदि आप विभाग का नाम जानना चाहते हैं, तो सबसे पहले आपको DeptId की आवश्यकता होगी।
| DeptId | DeptName |
| 001 | Finance |
| 002 | Marketing |
| 003 | HR |
इसलिए, DeptId और DeptName के बीच उपरोक्त फंक्शनल डिपेंडेंसी को DeptId के रूप में निर्धारित किया जा सकता है जो DeptName पर फंक्शनली डिपेंडेंट है:
| DeptId -> DeptName |
फंक्शनल डिपेंडेंसी के प्रकार
फंक्शनल डिपेंडेंसी के तीन रूप हैं:
- ट्रिवियल फंक्शनल डिपेंडेंसी
- नॉन-ट्रिवियल फंक्शनल डिपेंडेंसी
- कम्प्लीटली नॉन-ट्रिवियल फंक्शनल डिपेंडेंसी
आइए ट्रिवियल फंक्शनल डिपेंडेंसी से शुरू करें:
ट्रिवियल फंक्शनल डिपेंडेंसी
यह तब होता है जब B, A का सबसेट होता है:
| A ->B |
उदाहरण
हम उसी <Department> टेबल पर विचार कर रहे हैं जिसमें दो विशेषताएँ हैं ताकि ट्रिवियल डिपेंडेंसी की अवधारणा को समझा जा सके।
निम्नलिखित एक ट्रिवियल फंक्शनल डिपेंडेंसी है क्योंकि DeptId, DeptId और DeptName का सबसेट है:
| { DeptId, DeptName } -> DeptId |
नॉन-ट्रिवियल फंक्शनल डिपेंडेंसी
यह तब होता है जब B, A का सबसेट नहीं होता:
| A ->B |
उदाहरण
| DeptId -> DeptName |
उपरोक्त एक नॉन-ट्रिवियल फंक्शनल डिपेंडेंसी है क्योंकि DeptName, DeptId का सबसेट नहीं है।
कम्प्लीटली नॉन-ट्रिवियल फंक्शनल डिपेंडेंसी
यह तब होता है जब A इंटरसेक्शन B नल होता है:
| A ->B |
आर्मस्ट्रांग के स्वयंसिद्ध (Armstrong's Axioms) फंक्शनल डिपेंडेंसी की संपत्ति
आर्मस्ट्रांग के स्वयंसिद्ध संपत्ति को 1974 में विलियम आर्मस्ट्रांग द्वारा फंक्शनल डिपेंडेंसी के बारे में तर्क करने के लिए विकसित किया गया था।
संपत्ति उन नियमों का सुझाव देती है जो निम्नलिखित संतुष्ट होने पर सत्य होते हैं:
- ट्रांजिटिविटी (Transitivity)
यदि A->B और B->C, तो A->C यानी एक ट्रांजिटिव संबंध। - रिफ्लेक्सिविटी (Reflexivity)
A-> B, यदि B, A का सबसेट है। - ऑगमेंटेशन (Augmentation)
अंतिम नियम सुझाता है: AC->BC, यदि A->B