प्राथमिक कुंजी और विदेशी कुंजी के बीच अंतर जानने से पहले, आइए जानें:
कुंजी क्या हैं?
कुंजियाँ एक विशेषता है जो आपको एक संबंध (तालिका) में एक पंक्ति (टुपल) की पहचान करने में मदद करती है। वे आपको दो तालिकाओं के बीच संबंध खोजने की अनुमति देते हैं। कुंजियाँ उस तालिका में एक या अधिक स्तंभों के संयोजन से तालिका में विशिष्ट रूप से एक पंक्ति को पहचानने में आपकी सहायता करती हैं। डेटाबेस कुंजी तालिका से एक अद्वितीय रिकॉर्ड या पंक्ति खोजने के लिए भी सहायक है।
डाटाबेस रिलेशनशिप क्या है?
डेटाबेस संबंध एक या एक से अधिक तालिकाओं के बीच का संबंध है जो जुड़ने वाले बयानों का उपयोग करके बनाया जाता है। इसका उपयोग डेटाबेस से डेटा को कुशलतापूर्वक प्राप्त करने के लिए किया जाता है। मुख्य रूप से तीन प्रकार के रिश्ते होते हैं 1) एक-से-एक, 2) एक-से-कई, 3) कई-से-कई।
प्राथमिक कुंजी क्या है?
एक प्राथमिक कुंजी बाधा स्तंभों या स्तंभों का समूह है जो विशिष्ट डेटाबेस प्रबंधन प्रणाली की तालिका में हर पंक्ति को विशिष्ट रूप से पहचानता है। यह डुप्लिकेट नहीं हो सकता है, जिसका अर्थ है कि एक ही मूल्य तालिका में एक से अधिक बार दिखाई नहीं देना चाहिए।
एक तालिका में एक से अधिक प्राथमिक कुंजी हो सकती हैं। प्राथमिक कुंजी को स्तंभ या तालिका स्तर पर परिभाषित किया जा सकता है। यदि आप एक संयुक्त प्राथमिक कुंजी बनाते हैं, तो इसे टेबल स्तर पर परिभाषित किया जाना चाहिए।
विदेशी कुंजी क्या है?
विदेशी कुंजी एक स्तंभ है जो दो तालिकाओं के बीच संबंध बनाता है। विदेशी कुंजी का उद्देश्य डेटा अखंडता को बनाए रखना और एक इकाई के दो अलग-अलग उदाहरणों के बीच नेविगेशन की अनुमति देना है। यह दो तालिकाओं के बीच एक क्रॉस-रेफरेंस के रूप में कार्य करता है क्योंकि यह किसी अन्य तालिका की प्राथमिक कुंजी को संदर्भित करता है। डेटाबेस में हर रिश्ते को एक विदेशी कुंजी द्वारा समर्थित होना चाहिए।
प्रमुख स्रोत:
- एक प्राथमिक कुंजी बाधा एक स्तंभ है जो विशिष्ट डेटाबेस प्रबंधन प्रणाली की तालिका में प्रत्येक पंक्ति को विशिष्ट रूप से पहचानती है, जबकि विदेशी कुंजी एक स्तंभ है जो दो तालिकाओं के बीच संबंध बनाता है।
- प्राथमिक कुंजी कभी भी अशक्त मूल्यों को स्वीकार नहीं करती है जबकि विदेशी कुंजी कई शून्य मानों को स्वीकार कर सकती है।
- आपके पास तालिका में केवल एक ही प्राथमिक कुंजी हो सकती है जबकि आपके पास एक तालिका में कई विदेशी कुंजी हो सकती हैं।
- प्राथमिक कुंजी के मूल्य को मूल तालिका से नहीं हटाया जा सकता है, जबकि विदेशी कुंजी के मूल्य को बाल तालिका से हटाया जा सकता है।
- किसी भी दो पंक्तियों में प्राथमिक कुंजी के लिए कोई समान मान नहीं हो सकता है दूसरी तरफ एक विदेशी कुंजी में डुप्लिकेट मान हो सकते हैं।
- विदेशी कुंजी तालिका में कोई भी मूल्य सम्मिलित करते समय तालिका स्तंभ में मान सम्मिलित करने में कोई सीमा नहीं है, यह सुनिश्चित करें कि मूल्य प्राथमिक कुंजी के स्तंभ में मौजूद है।
प्राथमिक कुंजी का उपयोग क्यों करें?
यहां प्राथमिक कुंजी का उपयोग करने के विपक्ष / लाभ दिए गए हैं:
- प्राथमिक कुंजी का मुख्य उद्देश्य डेटाबेस तालिका में प्रत्येक रिकॉर्ड की पहचान करना है।
- जब आप किसी को शून्य मान दर्ज करने की अनुमति नहीं देते हैं, तो आप एक प्राथमिक कुंजी का उपयोग कर सकते हैं।
- यदि आप रिकॉर्ड्स को हटाते या अपडेट करते हैं, तो आपके द्वारा निर्दिष्ट कार्रवाई डेटा की अखंडता सुनिश्चित करने के लिए की जाएगी।
- पैरेंट टेबल के लिए डिलीट या अपडेट को अस्वीकार करने के लिए प्रतिबंधित ऑपरेशन करें।
- जब भी आप शारीरिक रूप से DBMS टेबल को व्यवस्थित करते हैं, तब डेटा को संकुल अनुक्रमणिका के अनुक्रम में व्यवस्थित किया जाता है।
विदेशी कुंजी का उपयोग क्यों करें?
विदेशी कुंजी का उपयोग करने के महत्वपूर्ण कारण इस प्रकार हैं:
- विदेशी कुंजी आपको मूल तालिका से प्राथमिक कुंजी का उपयोग करके संस्थाओं को स्थानांतरित करने में मदद करती है।
- एक विदेशी कुंजी आपको दो या अधिक तालिकाओं को एक साथ जोड़ने में सक्षम करती है।
- यह आपके डेटाबेस डेटा को सुसंगत बनाता है।
- एक पैरेंट टेबल में प्राइमरी की के साथ कॉलम या कॉम्बिनेशन को मिलाने के लिए फॉरेन की का इस्तेमाल किया जा सकता है।
- एसक्यूएल विदेशी कुंजी बाधा का उपयोग बच्चे की तालिका में मूल्यों से मेल खाने के लिए डेटा माता-पिता की संदर्भात्मक अखंडता को सुनिश्चित करने के लिए किया जाता है।
प्राथमिक कुंजी का उदाहरण
वाक्य - विन्यास:
नीचे प्राथमिक कुंजी का सिंटैक्स है:
CREATE TABLE(Column1 datatype,Column2 datatype, PRIMARY KEY (Column-Name).);
यहाँ,
- Table_Name आपके द्वारा बनाई गई तालिका का नाम है।
- Column_Name प्राथमिक कुंजी वाले कॉलम का नाम है।
उदाहरण:
अध्ययन | अनुक्रमांक | नाम | उपनाम | ईमेल |
---|---|---|---|---|
1 | 1 1 | टॉम | कीमत | इस ईमेल पते की सुरक्षा स्पैममबोट से की जा रही है। इसे देखने के लिए आपको जावास्क्रिप्ट सक्षम करना होगा। |
२ | १२ | छेद | राइट | इस ईमेल पते की सुरक्षा स्पैममबोट से की जा रही है। इसे देखने के लिए आपको जावास्क्रिप्ट सक्षम करना होगा। |
३ | १३ | दाना | नतन | इस ईमेल पते की सुरक्षा स्पैममबोट से की जा रही है। इसे देखने के लिए आपको जावास्क्रिप्ट सक्षम करना होगा। |
ऊपर दिए गए उदाहरण में, हमने एक छात्र तालिका बनाई है जिसमें StudID, Roll No, First Name, Last Name और Email जैसे कॉलम हैं। स्टड को एक प्राथमिक कुंजी के रूप में चुना जाता है क्योंकि यह तालिका में अन्य पंक्तियों की विशिष्ट पहचान कर सकता है।
विदेशी कुंजी का उदाहरण
वाक्य - विन्यास:
नीचे विदेशी कुंजी का वाक्य विन्यास है:
CREATE TABLE