Length of LOB data exceeds maximum 65536
報錯:
Exception: Message: ErrorCode: -2147204784, InnerException: System.Data.SqlClient.SqlException:
Length of LOB data (115388) to be replicated exceeds configured maximum 65536.
The statement has been terminated
原因:
是該數據庫啟動了SQL Server復制,而你嘗試插入數據到一個配置了復制的文章的發布列text、ntext或image。
解決方法:
為了解決該錯誤,先給該數據庫做個完備,然後運行一下語句:
sp_configure ‘max text repl size‘, 2147483647 Go RECONFIGURE GO
註意:該設置立即生效無需重啟SQL Server服務。
更多信息:
“max text repl size”選項以字節為單位,指定了text、ntext、varchar(max)、nvarchar(max)、varbinary(max)、xml和image類型數據,可以以單一的INSERT、UPDATE、WRITETEXT或UPDATETEXT語句添加到被復制的列,或者被捕獲的列。默認大小為65536。該值為-1表明沒有限制,而無論數據類型。該選項適用於事務復制和變更數據捕獲。當一個實例既配置了事務復制又配置了變更數據捕獲,該值對兩個特性都適用。該選項不適用於快照復制和合並復制。
參考:
SQL Server 2008中的Max text repl size選項:
http://msdn.microsoft.com/en-us/library/ms186225.aspx
本文出自 “SQL Server Deep Dive” 博客,請務必保留此出處http://ultrasql.blog.51cto.com/9591438/1949629
Length of LOB data exceeds maximum 65536