我正在开发 Android 应用程序。我正在使用 sql sever 2008 数据库来存储和检索数据。现在我正在调用jbdc中的存储过程。 Here is the code 。现在它给了我异常,说 Invalid Column Index at 3。我在其他地方使用相同的代码,效果很好。但不知道为什么不在这里工作。如果您有任何想法,请提供适当的建议。谢谢。
我刚刚发现当 String dat = rs.getString(3); 时正在执行它显示上述异常。让我告诉你,在存储过程中它是日期时间。但它执行得很好。任何建议都对我有帮助。
最佳答案
从你的java代码来看,你的参数要么是OUT参数,要么是INOUT参数。如果是这种情况,您可能需要这样注册它们,以便可以从它们获取数据。
例如
cst.setInt(1,userId);
cst.setLong(2,taskId);
cst.setString(3, date);
cst.registerOutParameter(1, Types.NUMERIC);
cst.registerOutParameter(2, Types.NUMERIC);
cst.registerOutParameter(3, Types.VARCHAR);
rs = cst.executeQuery();
希望这能解决您的问题。
关于java - 在jdbc中调用存储过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7551490/