मैं देख रहा हूँ कि जब मैं इस कथन का उपयोग, Action
स्तंभ नल नहीं है के लिए SELECT जांच में nullability नियंत्रित करने के लिए कैसे:शाब्दिक आधारित कॉलम
SELECT TOP 0 SerialNumber, 0 [Action] INTO #MyTable FROM FSE_SerialNumber
लेकिन जब मैं इस बयान का उपयोग करें, Action
स्तंभ है नल:
SELECT TOP 0 SerialNumber, CAST(0 as int) [Action] INTO #MyTable FROM FSE_SerialNumber
तालिका इस तरह से है, क्योंकि मैं अस्थायी तालिका सर्वर डिफ़ॉल्ट मिलान या कहीं और से serialnumber का मिलान वारिस नहीं करना चाहते बनाने के लिए मेरे कारण। मैं इसे FSE_SerialNumber..SerialNumber के संयोजन से मेल खाना चाहता हूं।
मेरा सवाल है, क्या मैं कास्ट फ़ंक्शन पर भरोसा कर सकता हूं जो मुझे एक नामुमकिन कॉलम दे रहा है, या यह स्पष्ट रूप से परिभाषित नहीं है और बदल सकता है। कास्ट अचानक कॉलम को निरर्थक क्यों बनाता है? क्या यह स्पष्ट करने के लिए एक बेहतर तरीका है (टिप्पणियों के अलावा) कि मेरा इरादा वहां एक निरर्थक कॉलम प्राप्त करना है?
मुझे नहीं पता कि यह दस्तावेज है, लेकिन कहीं और मैंने एक शून्य से कॉलम बनाने के लिए एक शाब्दिक के बजाय एक चर का उपयोग करने की तकनीक भी देखी है।मुझे लगता है कि ऐसा इसलिए है क्योंकि परिवर्तनीय (आपकी अभिव्यक्ति की तरह) में एक संरचना है जिसका मेटाडाटा एनयूएलएल को अनुमति देता है, इसलिए नया कॉलम भी करता है। और यदि आपने अपना वैरिएबल @NullableInt नाम दिया है जो आपके स्वयं-दस्तावेज़ समस्या को संभाल सकता है। – GilM