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

JSON स्ट्रिंग को संग्रहीत करने के लिए सबसे अच्छा SQL डेटाटाइप क्या है?

निश्चित रूप से नहीं :

  • TEXT, NTEXT :वे प्रकार बहिष्कृत . हैं SQL सर्वर 2005 के अनुसार और नए विकास के लिए उपयोग नहीं किया जाना चाहिए। VARCHAR(MAX) का उपयोग करें या NVARCHAR(MAX) इसके बजाय

  • IMAGE , VARBINARY(MAX) :IMAGE TEXT/NTEXT . की तरह ही बहिष्कृत है , और टेक्स्ट स्ट्रिंग को बाइनरी कॉलम में संग्रहीत करने का वास्तव में कोई मतलब नहीं है....

ताकि मूल रूप से VARCHAR(x) या NVARCHAR(x) :VARCHAR गैर-यूनिकोड स्ट्रिंग्स (प्रति वर्ण 1 बाइट) और NVARCHAR stores को संग्रहीत करता है 2-बाइट-प्रति-वर्ण यूनिकोड मोड में सब कुछ संग्रहीत करता है। तो क्या आपको यूनिकोड की आवश्यकता है? क्या आपके तार में अरबी, हिब्रू, चीनी या अन्य गैर-पश्चिमी-यूरोपीय वर्ण हैं, संभावित रूप से? फिर NVARCHAR . के साथ जाएं

(N)VARCHAR कॉलम दो फ्लेवर में आते हैं:या तो आप अधिकतम लंबाई परिभाषित करते हैं जिसके परिणामस्वरूप 8000 बाइट्स या उससे कम (VARCHAR 8000 वर्णों तक, NVARCHAR 4000 तक), या यदि वह पर्याप्त नहीं है, तो (N)VARCHAR(MAX) का उपयोग करें संस्करण, जो 2 GByte तक डेटा संग्रहीत करते हैं।

अपडेट करें: SQL सर्वर 2016 मूल JSON समर्थन होगा - एक नया JSON डेटाटाइप (जो nvarchar . पर आधारित है ) पेश किया जाएगा, साथ ही एक FOR JSON क्वेरी से आउटपुट को JSON फॉर्मेट में बदलने का आदेश

अपडेट #2: अंतिम उत्पाद में, Microsoft ने एक अलग JSON . शामिल नहीं किया था डेटाटाइप - इसके बजाय, कई JSON-फ़ंक्शंस हैं (JSON में डेटाबेस पंक्तियों को पैकेज करने के लिए, या JSON को रिलेशनल डेटा में पार्स करने के लिए) जो NVARCHAR(n) प्रकार के कॉलम पर काम करते हैं।



  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. T-SQL का उपयोग करके SQL सर्वर में SQL जॉब्स को कॉन्फ़िगर करें

  3. क्रिएट व्यू बैच में एकमात्र स्टेटमेंट होना चाहिए

  4. SQL सर्वर में एक जाँच बाधा कैसे बनाएँ (T-SQL उदाहरण)

  5. पॉवरशेल का उपयोग करके .sql फ़ाइल को कैसे निष्पादित करें?