使用预准备语句插入到数字字段

时间:2012-12-17 14:58:43

标签: java sql-server prepared-statement

我尝试使用准备好的语句将值插入SQL服务器数字字段:

int temp = 5;
type = java.sql.Types.NUMERIC;                      
System.out.println(temp);
prd.setObject(i+1, temp,type);

但这给了我一个"Arithmetic overflow error converting numeric to data type numeric"

我还尝试将int转换为数字或使用prd.setInt插入它,但这也不起作用。

在预准备语句中设置值的正确方法是什么,该语句将成功插入SQL服务器的数字字段中?

1 个答案:

答案 0 :(得分:0)

事实证明,当您将String转换为int时,由于某种原因,在尝试插入预准备语句时,转换不起作用。

int temp= 2;
type = java.sql.Types.NUMERIC;                      
System.out.println(temp);
prd.setObject(i+1, temp,type);

有效。

在我的初始代码中,我做了:Integer.parseInt(String_value),并且由于某种原因破坏了变量。