【发布时间】:2013-11-28 03:11:43
【问题描述】:
我有一个插入查询,它将一些数据放入几列:
INSERT INTO table (a,b,c,d,e,f) VALUES (?,?,?,?,?,?);
我有一个脚本可以解析一些文档并根据一些标签将参数添加到准备好的语句中。通常所有参数都已设置,但有时文档中缺少一两个字段。我为表中的所有字段设置了默认值,但没有使用它们。我得到一个例外:
java.sql.SQLException: No value specified for parameter 1
有没有办法自动填充空参数?能否获取未设置的参数id列表,以便设置为空对应的数据类型?
【问题讨论】:
-
为什么不知道自己设置了哪些参数?或者您可以将它们中的 all 设置为默认值,然后用“真实”值选择性地覆盖它们。
-
@JonSkeet 看起来默认值确实有效。我之前尝试过,但它给了我“主键 X 的重复值”错误。现在它起作用了。将其添加为答案,我会接受。
标签: java mysql database prepared-statement