Может кто-то пожалуйста, объясните, почему это происходит на SQL Server 2008:SQL Server 2008 NVARCHAR (Max) конкатенация - вопрос Усечение
declare @sql Nvarchar(max);
set @sql =N'';
select @sql = @sql +replicate('a',4000) + replicate('b', 6000);
select len(@sql)
возвратов: 8000
Несколько сайтов предполагают, что до тех пор, как первой переменной имеет тип NVARCHAR (MAX), усечение не должно происходить, но оно все еще выполняется.
от Google вы получите «поле Varchar (Max), отсекающее данные после 8000 символов SQL Server 2008. У меня есть поле для хранения некоторых данных, поле объявлено как varchar (Max). Насколько я понимаю, это должно хранить 2^31 - 1 символ, но когда я ввожу некоторый контент более 8000 символов, он отсекает остальную часть « – Mukus
Это может помочь: http://dba.stackexchange.com/questions/18483/varcharmax-field-cutting-off-data-after-8000 -characters-sql-server-2008 –