字符串或二进制数据将被截断。该语句已在 System.Data.SqlClient.SqlConnection 处终止

String or binary data would be truncated. The statement has been terminated at System.Data.SqlClient.SqlConnection

示例:table CustomerCustomerName 列是 varchar(100) 并且在存储过程中也是相同的大小。

当我尝试通过传入 harry.smith@charterglobal.com 来更新行时,它会抛出此错误:

String or binary data would be truncated. The statement has been terminated at System.Data.SqlClient.SqlConnection

列大小为 100。传递的值小于该值,我仍然收到此错误 - 为什么?

此处传递电子邮件而不是姓名。

感谢任何帮助

谢谢

这是一个长期存在的案例,其中 SQL 服务器十多年来一直出现可怕的错误消息,而 Microsoft 只给出了借口。

您将不得不花时间来隔离所涉及的 table、字段和值,因为 Microsoft 未能在错误消息中提供它们。

这里没有标准的正确答案,但是如果你运行 sql server profiler,你应该能找到冒犯性的sql语句,然后你就可以算出来了出去。