यह उल्टा चांदी की कुंजी आइकन क्या है


11

मुझे रिपोर्ट और डैशबोर्ड बनाने में सक्षम होने के लिए SQL सर्वर 2005 3rd पार्टी सर्वर और डेटाबेस विरासत में मिला।

एक मेज पर, मुझे एक नया आइकन मिला: एक ब्लू-सिल्वर उल्टा-नीचे की, मेरी दूसरी प्राथमिक और विदेशी चाबियों के साथ।

जब मैं इसे राइट-क्लिक करता हूं, तो संदर्भ मेनू मुझे "स्क्रिप्ट कांस्ट्रेक्ट" के रूप में विकल्प देता है, लेकिन जब मैं इसे "संशोधित" करने का प्रयास करता हूं, तो यह कॉलम डिजाइन फॉर्म (प्राथमिक कुंजी की तरह) खोलता है, और फिर भी, यह इसमें दिखाई देता है "अनुक्रमित" अनुभाग, बाधाओं को नहीं।

किसी को पता है कि इसे क्या कहा जाता है और इसका उपयोग किस लिए किया जाता है?

अपसाइड-डाउन की

जवाबों:


12

यह एक अद्वितीय बाधा का संकेत दे रहा है। SQL सर्वर में, एक अद्वितीय बाधा वास्तव में कवर के तहत एक सूचकांक के रूप में लागू की जाती है; यही कारण है कि यह Indexesनोड के तहत भी दिखाई देता है (मैं आपको इस बात का अच्छा विवरण नहीं दे सकता कि यह कम से कम Constraintsनोड के तहत सूचीबद्ध क्यों नहीं है , और न ही उन्होंने सिर्फ एक अलग रंग के बजाय उल्टा कुंजी क्यों चुना)।

आपको यह प्रमाणित करने के लिए यहां एक परिणाम देखना चाहिए कि यह वास्तव में एक सूचकांक के रूप में लागू किया गया है:

SELECT index_id, type_desc, is_unique_constraint
  FROM sys.indexes
  WHERE name = N'IX_tblCustIndex';

आपने कहा कि आपने "स्क्रिप्ट कांस्ट्रेन्ड अस ..." देखा - अगर आपने इसके साथ पालन किया तो यह आपको एक स्क्रिप्ट प्रदान करेगा जैसे:

ALTER TABLE [dbo].[tblCustIndex] ADD UNIQUE NONCLUSTERED 
(
  [some_column] ASC
) WITH (...a bunch of default options...)

लेकिन इसे न चलाएं क्योंकि यह वाक्यविन्यास एक नाम का उपयोग नहीं करता है और यह केवल एक दूसरा, निरर्थक अद्वितीय अवरोध पैदा करेगा ...

यहाँ एक बहुत ही सरल रीप्रो है, और प्रमाण है कि मुझे बहुत मूल सिंटैक्स के साथ 2014 में भी उल्टा-सीधा कुंजी मिलती है:

CREATE TABLE dbo.foo(id INT UNIQUE);

यहाँ छवि विवरण दर्ज करें बड़ा करने के लिए क्लिक करें

यदि आप स्पष्ट रूप से एक अद्वितीय सूचकांक बनाते हैं, तो आप एक अलग आइकन प्राप्त कर सकते हैं (और केवल अंतर जिसे आप देख सकते sys.indexesहैं, नाम और मूल्य हैं is_unique_constraint:

यहाँ छवि विवरण दर्ज करें बड़ा करने के लिए क्लिक करें

अन्य अंतरों के लिए यह स्टैक ओवरफ्लो उत्तर देखें


1
यह SQL2005 के लिए विशिष्ट है? क्योंकि जब मैं एक UNIQUE इंडेक्स जोड़ने की कोशिश करता हूं, तो मुझे एक अलग आइकन (किसी प्रकार का उलटा पेड़) मिलता है। और जब मैं एक बाधा जोड़ता हूं, तो मुझे कुछ प्रकार के वर्ग-ब्रैकेट-तालिका आइकन मिलते हैं। मैं इस आइकन को पुन: पेश करने में सक्षम नहीं हो सकता।
फिलिप

@Philippe अपडेटेड उत्तर।
हारून बर्ट्रेंड

धन्यवाद। यह एक अलग व्याख्या थी, और एक त्वरित! :-)
फिलिप
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.