Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Максимален размер на Varbinary на SQL Server 2008 R2

Не мога да възпроизведа този сценарий. Опитах следното:

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, тогава бих предположил, че някое от следните е вярно:

  1. Колоната всъщност е VARBINARY(8000) .

  2. Вие избирате данните в Management Studio и анализирате дължината на данните, които се показват там. Това е ограничено до максимум 8192 знака в резултатите към текста, ако случаят е такъв, така че използвайте DATALENGTH() директно срещу колоната е много по-добър подход.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да наблюдавам само t-sql команди в SQL Profiler?

  2. SQL преобразува низови данни в шестнадесетичен формат в низов текст

  3. Изпращането на имейл през SQL Server е НЕУСПЕШНО

  4. Преобразуване на нормална дата и час в часова зона в sql сървър 2008

  5. SQL ефективен начин за присъединяване към таблица, където съществуват всички стойности