मैं इस परिदृश्य को पुन:पेश नहीं कर सकता। मैंने निम्नलिखित कोशिश की:
USE tempdb;
GO
CREATE TABLE dbo.blob(col VARBINARY(MAX));
INSERT dbo.blob(col) SELECT NULL;
UPDATE dbo.blob
SET col = (SELECT BulkColumn
FROM OPENROWSET( BULK 'C:\Folder\File.docx', SINGLE_BLOB) alias
);
SELECT DATALENGTH(col) FROM dbo.blob;
परिणाम:
--------
39578
यदि यह 8K पर सीमित हो रहा है तो मुझे लगता है कि निम्न में से कोई एक सत्य है:
-
कॉलम वास्तव में
VARBINARY(8000)
है । -
आप प्रबंधन स्टूडियो में डेटा का चयन कर रहे हैं, और वहां प्रदर्शित होने वाले डेटा की लंबाई का विश्लेषण कर रहे हैं। यह पाठ के परिणामों में अधिकतम 8192 वर्णों तक सीमित है, यदि ऐसा है, तो
DATALENGTH()
का उपयोग करके सीधे कॉलम के सामने एक बेहतर तरीका है।