मायक्रोसॉफ्ट SQL सर्व्हर मध्ये अद्वितीय प्रतिबंध

प्राथमिक की बाधा प्रती अद्वितीय बद्धता वापरणे फायदे

UNIQUE constraint तयार करून, SQL सर्व्हर प्रशासक निर्दिष्ट करतात की स्तंभमध्ये डुप्लीकेट मूल्ये नसतील. जेव्हा आपण एक नवीन UNIQUE constraint तयार करता, SQL सर्व्हर त्यामध्ये कोणत्याही डुप्लीकेट मूल्ये समाविष्ट आहेत किंवा नाही हे निश्चित करण्यासाठी प्रश्नामधील स्तंभ तपासते. जर टेबलमध्ये विद्यमान डुप्लीकेट्स असतील तर, constraint creation आदेश अपयशी ठरतो. त्याचप्रमाणे, एकदा आपल्याकडे एका स्तंभावर एक अनिष्ट प्रतिबंध असल्यामुळे, डुप्लिकेटस होऊ शकणार्या डेटाला जोडण्याचा किंवा सुधारण्याचा प्रयत्न देखील अयशस्वी झाला.

का असामान्य निर्बंध वापरा

एक अद्वितीय प्रतिबंध आणि एक प्राथमिक की दोन्ही अद्वितीयपणा अंमलबजावणी करतात, परंतु अशी वेळ आहे की एक अद्वितीय प्रतिबंध हा एक उत्तम पर्याय आहे.

एक UNIQUE मर्यादा तयार करणे

आपण SQL सर्व्हर मध्ये एक अद्वितीय बांधा बनवू शकता अनेक मार्ग आहेत आपण विद्यमान सारणीवर एक UNIQUE constraint जोडण्यासाठी Transact-SQL वापरू इच्छित असल्यास, आपण खाली स्पष्ट म्हणून, ALTER TABLE विधान वापरू शकता:

ALTER TABLE कॉम्प्रिस्टेंट UNIQUE जोडा ()

आपण GUI साधनांचा वापर करून SQL सर्व्हर सह संवाद साधण्यास प्राधान्य देत असल्यास, आपण SQL सर्व्हर व्यवस्थापन स्टुडिओचा वापर करून UNIQUE निर्बंध देखील तयार करू शकता. कसे ते येथे आहे:

  1. SQL सर्व्हर व्यवस्थापन स्टुडिओ उघडा
  2. डेटाबेसचा टेबल फोल्डर विस्तृत करा जिथे आपण मर्यादा तयार करु इच्छिता.
  3. सारणीवर उजवे-क्लिक करा जिथे आपण मर्यादा जोडायची आणि डिझाईन क्लिक करा.
  4. टेबल डिझाइनर मेनूमध्ये, इंडेक्स / कीज क्लिक करा.
  5. निर्देशांक / किजसंवाद बॉक्समध्ये, जोडा क्लिक करा.
  6. प्रकार ड्रॉप-डाउन सूचीमध्ये अनन्य की निवडा.

अद्वितीय प्रतिबंध वि. अद्वितीय निर्देशांक

UNIQUE constraint आणि UNIQUE अनुक्रमणिका दरम्यान काही फरक आहे. आपण त्यांना तयार करण्यासाठी भिन्न Transact-SQL आदेशांचा वापर करताना (ALTER TABLE ... मर्यादांसाठी ADD CONSTRENT आणि अनुक्रमांकांसाठी अद्वितीय INDEX तयार करा), त्यांच्याकडे तेच परिणाम आहेत, बहुतेक भागासाठी. खरेतर, जेव्हा आपण एक अद्वितीय अशी निर्बंध निर्माण करता तेव्हा ते प्रत्यक्षात टेबलवर एक अद्वितीय अनुक्रमणिका तयार करते. हे लक्षणीय आहे, तथापि, अनेक फरक आहेत: