根据javadoc:
void setBigDecimal(String parameterName, BigDecimal x) 抛出SQLException
将指定参数设置为给定的java.math.BigDecimal值。驱动程序将其转换为 将数字发送到数据库时的SQL NUMERIC值。
我有一些mssql stored procedure
,其参数类型为NUMERIC(10, 0)
,我尝试在JDBC中将此值作为java.math.BigDecimal
传递...但我得到了:
com.microsoft.sqlserver.jdbc.SQLServerException: Error converting data type decimal to numeric
我可以找到解决方法(例如,将参数类型更改为BIGING
并使用Java中的setLong
)。
但我的问题是......这是sql server jdbc驱动程序中的这个错误吗?
答案 0 :(得分:0)
java.lang.Long
可能适合这里,但我认为这是mssql驱动程序中的一个问题。