【发布时间】:2011-09-07 05:52:44
【问题描述】:
我正在尝试使用 Java 将图像上传到数据库。
我使用以下代码来完成这项工作。
File file= new File("image.jpg");
FileInputStream fis = new FileInputStream("image.jpg");
String query = "insert into mytable(id,image) values(?, ?)";
PreparedStatement stmt = dbConn.prepareStatement(query);
stmt.setInt(1, sid);
stmt.setBinaryStream(2, fis, (int) file.length());
stmt.executeUpdate();
但它会抛出这个错误。
java.sql.SQLException: Parameter index out of range (1 > number of parameters, which is 0)
请帮我解决这个问题。
【问题讨论】:
-
您确定异常出现在图像部分吗?还是身份证?
-
我找不到错误在哪里。据我了解,它说没有任何参数。但正如我在 Java 帮助中看到的那样,这是实现它的方法。
-
你能显示完整的堆栈跟踪吗?
-
@mgamulin 这是我的一位朋友问我的问题。这只是我现在掌握的信息。将尝试从他那里获取该信息。感谢您的关注.. :) 我无法理解的是,我在网上找到的示例并根据 Java 帮助,这是正确的方法。为什么不识别参数?
-
能不能在File file = new File("image.jpg")后在线设置断点,看看file.length是什么。你确定你的图片路径有效吗,我不确定。