BigDecimal类型数据长度过长导致程序报出从数据类型 nv
2019-12-02 本文已影响0人
shengcloud
Error updating database. Cause: com.microsoft.sqlserver.jdbc.SQLServerException: 从数据类型 nvarchar 转换为 decimal 时出错。
第一眼看到这个错误的时候,马上就去看了一下值类型发现没有问题,接着调试,结果还是报出这个错误,纳闷之余,我把这个BigDecimal类型
的值用.getclass然后输出出来,看下到底这个值是什么类型,结果打印出来是class java.math.BigDecimal类型。不过这个条数据小数点后足足有59
位,因为这个值是从Double类型的值强转过来的。于是乎我把该值用.setScale(2, BigDecimal.ROUND_FLOOR);保留两位小数,最后调试程序,就
不报错了,很基础的一个问题,但是以前没遇到过,所以分享出来这个小小坑。