Jdbc 获取java.sql.SQLException:插入表时列索引无效
我一直在处理一段代码,其中Jdbc 获取java.sql.SQLException:插入表时列索引无效,jdbc,prepared-statement,Jdbc,Prepared Statement,我一直在处理一段代码,其中java.sql.SQLException:Invalid column index在运行时被抛出 我过去曾多次处理过这个异常,每次我发现开发人员在使用rs.getsString()方法时使用了错误的索引 但这次我的问题是,我在将记录插入表时遇到了这个异常。有谁能告诉我,我在插入数据库时出现此异常的原因是什么 此外,我无法在出现异常时看到正在执行的查询,因为当我尝试使用prepareStmt.toString()时,正在使用的驱动程序(oracle驱动程序)不会打印查询
java.sql.SQLException:Invalid column index
在运行时被抛出
我过去曾多次处理过这个异常,每次我发现开发人员在使用rs.getsString()
方法时使用了错误的索引
但这次我的问题是,我在将记录插入表时遇到了这个异常。有谁能告诉我,我在插入数据库时出现此异常的原因是什么
此外,我无法在出现异常时看到正在执行的查询,因为当我尝试使用prepareStmt.toString()
时,正在使用的驱动程序(oracle驱动程序)不会打印查询。此方法改为打印对象引用
请帮忙。非常感谢您的帮助
致意
阿努巴夫·詹 我猜问题是您将xxxx设置为一个索引错误的语句(例如,0或大于SQL语句中“?”的数目)我也面临同样的问题。后来我发现在我的查询字符串中,我在?符号周围使用了引号,这是不允许的
例如:
插入文档表(ID、源、目标、状态)值(“?”、“活动”、“备份”、“D”)
是不允许的。应该写为:
插入文档表(ID、源、目标、状态)值(?、“活动”、“备份”和“D”)
这也适用于PreparedStation。完美的解释