最近在执行一个数据库写操作时抛出了如下的异常:
java.sql.SQLException:Underflow Exception trying to bind 4.9E-324
4.9E-324显然是个浮点数,通过代码跟踪,发现它是java.lang.Double.MIN_VALUE定义的最小双精度数浮点数,于是找到原因,是数据库一个表中的某个字段写入了错误的数据,该字段类型是NUMBER(*,20),而Double.MIN_VALUE的小数位远远超过了20,所以导致无法存储抛出java.sql.SQLException异常。
本文介绍了一次数据库写操作中出现的java.sql.SQLException异常情况及其解决过程。异常原因是由于尝试将Java中的Double.MIN_VALUE写入到字段类型为NUMBER(*,20)的数据库表中,该值的小数位数超出了字段定义的最大限制。
1万+





