मैं एक परियोजना पर काम कर रहा हूं और मैं किसी तालिका में कुछ आसानी से समेकित जानकारी स्टोर करना चाहता हूं। MySQL का enum डेटा प्रकार वही करता है जो मैं चाहता हूं: http://dev.mysql.com/doc/refman/5.0/en/enum.html। एसक्यूएल सर्वर 2005 में समकक्ष है?क्या SQL सर्वर 2005 के पास MySQL के ENUM डेटा प्रकार के बराबर है?
मुझे पता है कि मैं एक कुंजी तालिका में संभावित मानों को एक कुंजी के साथ स्टोर कर सकता हूं, लेकिन मुझे विवरणों के लिए इसे वापस लिंक नहीं करना पड़ेगा। हमारे डेटाबेस मानकों से हमें गैर-पूर्णांक या अद्वितीय पहचानकर्ता फ़ील्ड पर लिंक करने की अनुमति नहीं मिलती है, इसलिए संभव कुंजी को संग्रहित करना क्योंकि वर्ण भी बाहर हैं।
यह मेरे लिए काम करता है। एक शेष चिंता है: क्या यह बताने का कोई आसान तरीका है कि बाधा का चयन किये बिना enum के लिए वैध मूल्य क्या हैं? मैं समझता हूं कि ऐसा नहीं हो सकता है और मुझे इसके आधार पर अपना निर्णय लेना होगा। –
मुझे यकीन नहीं है कि बाधा का चयन करके आपका क्या मतलब है, लेकिन आप इस सिस्टम क्वेरी के परिणामों को अपनी आवश्यकताओं के लिए उपयोग करने योग्य कुछ में लपेटने में सक्षम हो सकते हैं। sys.check_constraints से परिभाषा का चयन करें जहां [name] = 'yourConstraintName' – Nikki9696
दोनों ENUM और चेक बाधाओं के लिए, आप सिस्टम टेबल क्वेरी कर सकते हैं और आपको मानों की सूची निर्दिष्ट करने वाले पूर्ण वाक्यविन्यास के साथ एक स्ट्रिंग प्राप्त होती है। फिर आपको एक उपयोगी प्रारूप में सूची प्राप्त करने के लिए उसे पार्स करना होगा। क्वेरी मेटाडेटा के लिए यह बहुत असुविधाजनक है जैसे कि यह डेटा था। –