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

वर्चर (अधिकतम) से अधिक स्ट्रिंग वर को कैसे स्टोर करें?

गंभीरता से - VARCHAR(MAX) 2 जीबी तक डेटा स्टोर कर सकता है - सिर्फ 8000 कैरेक्टर नहीं.....

इसे आजमाएं:

DECLARE @myVar VARCHAR(MAX) = ''

DECLARE @ix INT = 1

WHILE @ix < 1000
BEGIN
    set @myVar = @myVar + CAST('bla bla bla' AS VARCHAR(MAX))
    SET @ix = @ix + 1
END

SELECT DATALENGTH(@myvar)

यह मान उच्च लौटाएगा 1000 पुनरावृत्तियों के बाद 8000 वर्णों से अधिक।

मुद्दा यह है:यदि आप varchar(max) . का उपयोग कर रहे हैं , आपको यह सुनिश्चित करने की ज़रूरत है कि आप हमेशा कास्ट करें आपके सभी तार varchar(max) . तक स्पष्ट रूप से - जैसा कि मैंने इस उदाहरण में किया था। अन्यथा, SQL सर्वर "नियमित" varchar . पर वापस आ जाएगा प्रसंस्करण, और यह वास्तव में 8000 वर्णों तक सीमित है....




  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. एसक्यूएल सर्वर पर एक टेबल से 8,500,000 रिकॉर्ड कैसे हटाएं?

  3. टी-एसक्यूएल में प्रिंट स्टेटमेंट

  4. SQL इंजेक्शन को रोकने के दौरान उपयोगकर्ता को टेबल नाम और कॉलम नाम पास करने की अनुमति देना

  5. SQL सर्वर 2008 से ही क्लाइंट IP पता कैसे प्राप्त करें?