1. 程式人生 > >Length of LOB data exceeds maximum 65536

Length of LOB data exceeds maximum 65536

max text repl size

報錯:

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