获取该列导致com.microsoft.sqlserver.jdbc.SQLServerException的任何方法:字符串或二进制数据将被截断

时间:2013-01-31 19:20:33

标签: java sql hibernate sql-server-2005 jdbc

我们有一个使用hibernate将数据持久化到sql server 2005实例的webapp。

偶尔我们会得到com.microsoft.sqlserver.jdbc.SQLServerException: String or binary data would be truncated.

虽然我们可以获取插入查询,然后手动比较数据库中的列定义以查看哪个列太小,但这很慢并且容易出错。有没有办法自动从这个例外中获取有问题的表/列?

我已经浏览了Google和SO以寻求解决方案,所以我会理解答案是“不,你不能得到这些信息”,但我认为这并没有伤害。

1 个答案:

答案 0 :(得分:-2)

当您尝试将表中的数据放入表格列时,可能会发生此错误,例如:

你的列设置是varchar(10),你试着把“一些数据长度超过10”

然后您会收到如下错误:com.microsoft.sqlserver.jdbc.SQLServerException: String or binary data would be truncated.

检查输入数据和您的设置。