प्राथमिक कुंजी बाधाओं पर अद्वितीय बाधाओं का उपयोग करने के लाभ
एक अद्वितीय बाधा उत्पन्न करके, SQL सर्वर प्रशासक निर्दिष्ट करते हैं कि एक कॉलम में डुप्लिकेट मान नहीं हो सकते हैं। जब आप एक नई अनूठी बाधा उत्पन्न करते हैं, तो SQL सर्वर यह निर्धारित करने के लिए कॉलम को जांचता है कि इसमें कोई डुप्लिकेट मान है या नहीं। यदि तालिका में पूर्व-मौजूदा डुप्लिकेट हैं, तो बाधा निर्माण कमांड विफल हो जाता है। इसी प्रकार, एक बार जब आप कॉलम पर एक विशिष्ट बाधा डालते हैं, तो डेटा जोड़ने या संशोधित करने का प्रयास करता है जो डुप्लिकेट मौजूद होने का कारण बनता है।
अद्वितीय बाधाओं का उपयोग क्यों करें
एक विशिष्ट बाधा और एक प्राथमिक कुंजी दोनों विशिष्टता को लागू करती है, लेकिन कई बार एक अद्वितीय बाधा बेहतर विकल्प है।
- जब आप किसी तालिका में एकाधिक बाधाओं को चाहते हैं तो एक विशिष्ट बाधा का उपयोग करें। आप केवल एक प्राथमिक कुंजी को एक तालिका में संलग्न कर सकते हैं।
- जब कॉलम शून्य मानों को अनुमति देता है तो एक अद्वितीय बाधा का उपयोग करें। प्राथमिक कुंजी बाधाओं को केवल उन स्तंभों से जोड़ा जा सकता है जो शून्य मानों की अनुमति नहीं देते हैं।
एक अद्वितीय बाधा बनाना
SQL सर्वर में एक अद्वितीय बाधा उत्पन्न करने के कई तरीके हैं। यदि आप किसी मौजूदा तालिका पर एक अनन्य बाधा जोड़ने के लिए ट्रांजैक्ट-एसक्यूएल का उपयोग करना चाहते हैं, तो आप नीचे दिए गए अनुसार, वैकल्पिक तालिका विवरण का उपयोग कर सकते हैं:
वैकल्पिक तालिका कंसल्टेंट अद्वितीय जोड़ें ()यदि आप जीयूआई उपकरण का उपयोग कर SQL सर्वर से बातचीत करना पसंद करते हैं, तो आप SQL सर्वर प्रबंधन स्टूडियो का उपयोग करके एक अद्वितीय बाधा भी बना सकते हैं। ऐसे:
- एसक्यूएल सर्वर प्रबंधन स्टूडियो खोलें।
- डेटाबेस के टेबल्स फ़ोल्डर का विस्तार करें जहां आप बाधा उत्पन्न करना चाहते हैं।
- उस तालिका पर राइट-क्लिक करें जहां आप बाधा जोड़ना चाहते हैं और डिज़ाइन पर क्लिक करें।
- टेबल डिज़ाइनर मेनू में, इंडेक्स / कुंजी पर क्लिक करें।
- इंडेक्स / कुंजी संवाद बॉक्स में, जोड़ें पर क्लिक करें।
- टाइप ड्रॉप-डाउन सूची में अनन्य कुंजी चुनें।
अद्वितीय प्रतिबंध बनाम अद्वितीय सूचकांक
एक अद्वितीय बाधा और एक अद्वितीय सूचकांक के बीच अंतर के बारे में कुछ भ्रम रहा है। जबकि आप उन्हें बनाने के लिए विभिन्न ट्रांजैक्ट-एसक्यूएल कमांड का उपयोग कर सकते हैं (वैकल्पिक तालिका ... बाधाओं के लिए कंसल्टेंट जोड़ें और इंडेक्स के लिए अद्वितीय इंडेक्स बनाएं), अधिकांश भाग के लिए उनका वही प्रभाव होता है। वास्तव में, जब आप एक अद्वितीय बाधा उत्पन्न करते हैं, तो यह वास्तव में तालिका पर एक अद्वितीय सूचकांक बनाता है। हालांकि, यह ध्यान रखना महत्वपूर्ण है कि कई मतभेद हैं:
- जब आप एक इंडेक्स बनाते हैं, तो आप सृजन कमांड में अतिरिक्त विकल्प जोड़ सकते हैं।
- एक अद्वितीय बाधा के अधीन एक कॉलम का उपयोग विदेशी कुंजी के रूप में किया जा सकता है।