報錯:
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。
解決方法:
為了解決該錯誤,先給該資料庫做個完備,然後運作一下語句:
1
2
3
4
<code>sp_configure </code><code>'max text repl size'</code><code>, 2147483647 </code>
<code> </code><code>Go </code>
<code> </code><code>RECONFIGURE </code>
<code> </code><code>GO</code>
注意:該設定立即生效無需重新開機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選項:
<a href="http://msdn.microsoft.com/en-us/library/ms186225.aspx" target="_blank">http://msdn.microsoft.com/en-us/library/ms186225.aspx</a>
本文轉自UltraSQL51CTO部落格,原文連結:http://blog.51cto.com/ultrasql/1949629 ,如需轉載請自行聯系原作者