在 Management Studio 中编辑时,某些行出现“字符串或二进制数据将被截断”错误

在 Management Studio 中编辑时,某些行出现“字符串或二进制数据将被截断”错误

尝试使用 SQL Server Management Studio(编辑行)将数据添加到新创建的列时,出现以下错误:

沒有更新任何行。

第 1 行的数据尚未提交。

错误来源:.Net SqlClient 数据提供程序。

错误消息:字符串或二进制数据将被截断。

该语句已终止。

更正错误并重试或按 ESC 取消更改。

该列的数据类型为 nvarchar(150)。


更新:
我只插入几个 ascii 字符(例如:abc)。

这是其他人的数据库,他们要求我对其进行研究...我发现:a)只有部分行出现此错误b)出现此错误的行在另外两列中有长字符串(一个是 nvarchar(max),一个是 ntext)。

答案1

当表中混合了ntextnvarchar(MAX)数据类型时,我有时会遇到这种情况。将所有ntexts 更改为nvarchar(MAX)s 即可解决问题。

答案2

此错误通常发生在超出列的数据类型长度时。您是否在列中插入了超过 150 个字符?

答案3

当我错误地超出字段可以容纳的字符数时,我收到此错误。在 Visual Studio 中,我错误地插入了一个数据类型为nvarchar(1)并试图将一个包含 6 个字符的单词保存到该字段。一旦我更改为nvarchar(50),效果很好。希望这对某些人有帮助。

答案4

尝试编辑表中甚至只有一个类型字段的行时,我遇到了此错误text。即使在 SSMS 18(2021 年)中,它似乎仍然是一个问题。

相关内容