BigDecimal类型数据长度过长导致程序报出从数据类型 nvarchar 转换为 decimal 时出错。

Error updating database. Cause: com.microsoft.sqlserver.jdbc.SQLServerException: 从数据类型 nvarchar 转换为 decimal 时出错。

    第一眼看到这个错误的时候,马上就去看了一下值类型发现没有问题,接着调试,结果还是报出这个错误,纳闷之余,我把这个BigDecimal类型

的值用.getclass然后输出出来,看下到底这个值是什么类型,结果打印出来是class java.math.BigDecimal类型。不过这个条数据小数点后足足有59

位,因为这个值是从Double类型的值强转过来的。于是乎我把该值用.setScale(2, BigDecimal.ROUND_FLOOR);保留两位小数,最后调试程序,就

不报错了,很基础的一个问题,但是以前没遇到过,所以分享出来这个小小坑。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。