要复制的lob 数据的长度(77639) 超出了配置的最大值65536怎么解决

要复制的lob 数据的长度(77639) 超出了配置的最大值65536怎么解决

2012/4/18 17:15:42来源:百度整理作者:清晨我要评论(0)

把网站升级为了sql 2005后,一直都比较正常,今天编辑加了一个超大型文章哈哈最少有十页,但是一提交出错了。HOHO,从来没出过问题的怎么会有这样的故障呢?分析肯定是2005限制问题。

错误如上面提示:

错误代码如下:

SQL Server 2005数据库使用过程中,JDBC Driver异常:

......  要复制的 LOB 数据的长度(456784)超出了配置的最大值 65536。

经过查找一番资料,发现服务器配置选项里有一项 "Max Text Repl Size" (“最大文本复制大小”),它的默认值为65536,可以通过修改这个值解决上面的问题。

通过SELECT*FROMsys.configurationsWHERENAMELIKE'%repl%'

查询得到max text repl size (B)最大值为2147483647,可以结合实际情况设置小于等于这个数值的值。

例如:

EXEC sp_configure 'show advanced options', 1
go
sp_configure 'max text repl size', '6553600'
go
RECONFIGURE

我们可以在 SQL Server Management Studio 中可以看到如下图:

经过上网查资料原因是SQL SERVER设置了在复制中一个UPDATE,INSERT,WRITETEXT和UPDATETEXT语句可以添加到复制列的最大数据量为65536 Byte(64k),对于数据量大于64K的列并不采用自动截取的方式而是不允许插入或者

更新来保证数据的完整性。解决方法如下:

使用max text repl size选项可以重新设定字段text和image数据的大小(单位为字节)。它的缺省值是64K,上限是2G.此选项仅适用于事务复制。快照复制和合并复制将会忽略此选项。该设置将立即生效,无需重新启动服务器。
方法一:
在SQL Server Management Studio配置 max text repl size 选项:

1、在对象资源管理器中,右键单击服务器并选择“属性”。 
2、单击“高级”节点。
3、在“杂项”下,将“最大文本复制大小”选项更改为所需的值。 
方法二:
利用sp_configure修改max text repl size值;
在查询分析器里运行:sp_configure 'max text repl size','2147483647'
此命令意思重新设置max text repl size值,为2G(即设置image字段存储容量为2G);
说明:
命令格式:
sp_configure '配置选项的名称' '选项值'

还比较简单吧,希望能帮助到你。sql 2005还是会比sql 2000要好用的多哦。功能很强大,稳定,速度更快。快去体验吧。


 

阅读本文后您有什么感想? 已有 人给出评价!

  • 0 囧
      囧
  • 0 恶心
      恶心
  • 0 期待
      期待
  • 0
      难过
  • 0 不错
      不错
  • 0 关注
      关注
  • 最新评论
  • 热门评论
共有评论(0)条 查看全部评论
高兴 可 汗 我不要 害羞 好 下下下 送花 屎 亲亲

注:您的评论需要经过审核才会显示出来