最大行大小(8926)超过了每行的最大字节数(8060)。如果结果行长度超过 8060 字节,则此表中行的 INSERT 或 UPDATE 将失败

分类:数据库| 发布:camnprbubuol| 查看: | 发表时间:2013/4/22

在使用SQL Server Database Publishing Wizard,将sqlserver2005中的数据库导出成sqlserver2000下的sql(包括数据的导出),然后在sqlserver2000的查询分析器里执行导出的sql时,出现警告:警告: 已创建表 XXX,但其最大行大小(8926)超过了每行的最大字节数(8060)。如果结果行长度超过 8060 字节,则此表中行的 INSERT 或 UPDATE 将失败。

解决办法:

一个表每行大小超过了的最大字节8060,建议使用将你表中占用字节数较多的 
char (nvchar)或者varchar(nvarchar) 类型 改为text(ntext)类型


SQL的规定,一条记录的最大存储长度为8060字节. 

所以,如果你创建类似下面的表就会有此警告: 
create table t(a varchar(8000),b varchar(8000)) 

因为a+b=16000的长度已经超过了一条记录的最大存储长度8060 
这种情况下,表可以正常地被创建,只要你存储/修改数据时 
datalength(a)+datalength(b)<8060 
那你的操作就不会有任何问题. 
否则,操作就会失败

原来是这个意思。如果怕有错,可以使用text。

365据说看到好文章不转的人,服务器容易宕机
原创文章如转载,请注明:转载自郑州网建-前端开发 http://camnpr.com/
本文链接:http://camnpr.com/archives/632.html