What is Key in database?
किसी भी रिकॉर्ड की फील्ड यूनिक वैल्यू बनाने के लिए Keys का प्रयोग किया जाता हैं रिलेशनल डेटाबेस मैनेजमेंट सिस्टम एसोसिएटेड एड्रेसिंग का प्रयोग करता है अर्थात यह Rows को वैल्यू के द्वारा आइडेंटिफाई तथा लोकेट करता है यूजर के लिए फिजिकल एड्रेस पारदर्शी होना चाहिए इसलिए रिलेशनल सिस्टम में keys की आवश्यकता होती है जो रिलेशनल डेटाबेस में टेबल की पंक्तियों को यूनिक रूप से आइडेंटिफाई कर सकती हैं
Types of Keys
- Primary key
- Candidate key
- Composite key
- Super key
- Foreign key
1. Primary key
Primary key एक टेबल में प्रत्येक रिकॉर्ड को यूनिक रखने के लिए प्रयोग की जाती हैं इस key के attribute कभी चेंज नहीं होना चाहिए जैसे एक व्यक्ति का एड्रेस प्राइमरी Key का पार्ट नहीं होना चाहिए क्योंकि यह चेंज हो सकता है परंतु Employee code नहीं बदला जा सकता जब तक की वह व्यक्ति उस संस्था को ना छोड़ दें | प्राइमरी की किसी भी टेबल में यूनिक की होती है जो पूरे रिकॉर्ड को निरूपित करती है|
2. Candidate key
Candidate key, attribute का सेट या एक attribute होता है जो एक रिकॉर्ड को यूनिक रखने के लिए प्रयोग की जाती है यह attribute Candidate key कहलाते हैं इस तरह के case में Candidate key में से एक key को Primary key चुन लिया जाता है तथा शेष बचे हुए Candidate keys, alternate key कहलाती हैं एक टेबल में केवल एक ही प्राइमरी की होती है जबकि कैंडिडेट की एक से अधिक हो सकती हैं|
3. Composite key
कई Cases में जब हम डेटाबेस डिजाइन करते हैं तो हम टेबल बनाते हैं प्रत्येक टेबल में हम एक से अधिक कॉलम को के पार्ट Primary key की तरह प्रयोग करते हैं उन्हें composite key कहते हैं दूसरे शब्दों में जब एक रिकॉर्ड एक सिंगल फील्ड के द्वारा uniquely identified नहीं किया जा सकता तो ऐसे case में composite key प्रयोग की जाती हैं|
4. Super key
एक Super key एक एंटिटी के लिए एक या एक से अधिक एट्रिब्यूट का सेट होता है जिसकी combine value एंटिटी सेट में entity को यूनिक बनाती हैं एक एंटिटी सेट employee मैं एट्रिब्यूट का सेट employee name, address, contact number आदि को एक Super key की तरह प्रयोग किया जा सकता है|
5. Foreign key
फॉरेन की का प्रयोग एक टेबल की दूसरी टेबल के साथ रिलेशनशिप को स्थापित करने के लिए किया जाता है अर्थात एक टेबल की लिंक दूसरी टेबल के साथ बनाने के लिए किया जाता है जैसे हम Student के नाम से एक डेटाबेस को Create करना चाहते हैं इस डेटाबेस में स्टूडेंट तथा कोर्स के नाम से 2 टेबल क्रिएट करते हैं|
Difference between Primary key and Foreign key
Primary Key |
Foreign Key |
प्राइमरी की एक कॉलम या कॉलम का सेट होता है जो एक टेबल में एक रो को यूनिक बनाता है | फॉरेन की एक कॉलम या कॉलम का सेट होता है जो दूसरी टेबल के एक प्राइमरी की या एक कैंडिडेट की को रेफर करता है |
एक टेबल में सिंगल प्राइमरी की हो सकती | एक टेबल में एक से अधिक फॉरेन की हो सकते हैं |
प्राइमरी की यूनिक होती है प्राइमरी की नल नहीं हो सकती | फॉरेन की नल हो सकती हैं |
प्राइमरी की एंटिटी इंटिग्रिटी पार ध्यान देती हैं | फॉरेन की referential इंटीग्रिटी पर ध्यान देते हैं |
प्राइमरी की को पैरेंट की के नाम से भी जाना जाता है | फॉरेन की को चाइल्ड की के नाम से जाना जाता है |