Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

SQL सर्वर में SYSNAME डेटा प्रकार क्या है?

sysname 128 यूनिकोड वर्णों तक सीमित एक अंतर्निहित डेटाटाइप है, जिसका उपयोग आईआईआरसी, मुख्य रूप से स्क्रिप्ट बनाते समय ऑब्जेक्ट नामों को संग्रहीत करने के लिए किया जाता है। इसका मान NULL नहीं हो सकता है

यह मूल रूप से nvarchar(128) NOT NULL . का उपयोग करने जैसा ही है

संपादित करें

जैसा कि @Jim ने टिप्पणियों में उल्लेख किया है, मुझे नहीं लगता कि वास्तव में कोई व्यावसायिक मामला है जहां आप sysname का उपयोग करेंगे ईमानदार रहना। यह मुख्य रूप से Microsoft द्वारा आंतरिक sys . का निर्माण करते समय उपयोग किया जाता है SQL सर्वर के भीतर टेबल और संग्रहीत कार्यविधियाँ आदि।

उदाहरण के लिए, Exec sp_help 'sys.tables' . को क्रियान्वित करके आप देखेंगे कि कॉलम name sysname . के रूप में परिभाषित किया गया है ऐसा इसलिए है क्योंकि इसका मान वास्तव में अपने आप में एक वस्तु है (एक तालिका)

मैं इसके बारे में ज्यादा चिंता नहीं करूंगा।

यह भी ध्यान देने योग्य है कि उन लोगों के लिए जो अभी भी SQL सर्वर 6.5 और उससे कम का उपयोग कर रहे हैं (क्या अभी भी लोग इसका उपयोग कर रहे हैं?) अंतर्निहित प्रकार का sysname varchar(30) . के बराबर है

दस्तावेज़ीकरण

sysname nchar . के लिए प्रलेखन के साथ परिभाषित किया गया है और nvarchar , टिप्पणी अनुभाग में:

<ब्लॉकक्वॉट>

sysname एक सिस्टम द्वारा आपूर्ति किया गया उपयोगकर्ता-परिभाषित डेटा प्रकार है जो कार्यात्मक रूप से nvarchar(128) के बराबर है , सिवाय इसके कि यह अशक्त नहीं है। sysname डेटाबेस ऑब्जेक्ट नामों को संदर्भित करने के लिए उपयोग किया जाता है।

उपरोक्त टिप्पणियों को स्पष्ट करने के लिए, डिफ़ॉल्ट . द्वारा sysname NOT NULL . के रूप में परिभाषित किया गया है इसे अशक्त के रूप में परिभाषित करना निश्चित रूप से संभव है। यह भी ध्यान रखना महत्वपूर्ण है कि सटीक परिभाषा SQL सर्वर के उदाहरणों के बीच भिन्न हो सकती है।

विशेष डेटा प्रकारों का उपयोग करना

<ब्लॉकक्वॉट>

sysname डेटा प्रकार का उपयोग तालिका कॉलम, चर और संग्रहीत प्रक्रिया पैरामीटर के लिए किया जाता है जो ऑब्जेक्ट नामों को संग्रहीत करता है। sysname . की सटीक परिभाषा पहचानकर्ताओं के लिए नियमों से संबंधित है। इसलिए, यह SQL सर्वर के उदाहरणों के बीच भिन्न हो सकता है। sysname कार्यात्मक रूप से वही है nvarchar(128) सिवाय इसके कि, डिफ़ॉल्ट रूप से, sysname निरर्थक नहीं है। SQL सर्वर के पुराने संस्करण, sysname वर्चर (30) के रूप में परिभाषित किया गया है।

sysname . के बारे में कुछ और जानकारी NULL को अनुमति देना या अस्वीकार करना मान यहां देखे जा सकते हैं https://stackoverflow.com/a/52290792/300863

सिर्फ इसलिए कि यह डिफ़ॉल्ट है (नल नहीं होना) यह गारंटी नहीं देता कि यह होगा!



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. एसक्यूएल सर्वर (टी-एसक्यूएल) में डेटाबेस के संयोजन को कैसे दिखाएं

  2. SQL में माह संख्या को माह नाम फ़ंक्शन में कनवर्ट करें

  3. SQL सर्वर 2017 में एक दृश्य बनाएँ

  4. मैं SQL सर्वर कनेक्शन स्ट्रिंग कैसे सेट कर सकता हूं?

  5. SQL सर्वर डेटाबेस में स्क्रिप्ट का उपयोग करके प्राथमिक कुंजी छोड़ें