直接在SQL Server 2005的Microsoft SQL Server Management Studio 中修改一张表中某个字段, 不管是删除字符还是添加都提示下面的错误.
---------------------------
Microsoft SQL Server Management Studio---------------------------
未更新任何行。
未提交行 1 中的数据。
错误源: .Net SqlClient Data Provider。
错误信息: 将截断字符串或二进制数据。
语句已终止。
请更正错误并重试,或按 Esc 取消更改。
网上搜了下,基本都是讲字符串长度不够. 我这个很明显不是这个问题,数据库使用很长时间了,是昨天恢复数据时空然出现该错误; 同一张表的其他记录个性又没问题.
没办法了,只好把修改这张表的字段长度,全部扩大一倍,问题依旧, 出错的字段类型是 ntext , 应该够大了.
解决办法: 把该ntext字段个性为nvarchar(max)后,就能修改字段的内容了,把出错的字段内容清空. 保存后,再把字段类型恢复为ntext.,内容重新从后台添加,问题解决.