我正在尝试将列中的"Y"更改为"N"。我已经在几行中更改了该值,但是一个特定的行抛出了错误。
这是错误:
第 170 行中的数据未提交。
错误源: .Net SqlClient 数据提供程序。
错误语句:字符串或二进制数据将被截断。
该语句已终止。
导致此错误的这一行是什么?
"Y"更改为"N"应该不会引起问题。
检查表中是否有触发器,该触发器可能会将数据发送到另一个表,其中截断发生在另一个字段上。
一种解决方案是使用查询来更新值,而不是(我猜)SSMS 中的编辑行设计器。
例如,如果你的表是tbl
的,列是col
的,你的主键是id
的,这个值是170。
update tbl set col='N' where id = 170;
TEXT 列中插入文本时出现相同的错误。
将其更改为VARCHAR(MAX),问题就消失了。
使用插入命令插入完全相同的文本在两种情况下都有效......至少对我来说是这样。