我正在使用JSON文件注入我的数据库,并且在插入路由和方向(也是插入的方向和路径记录)之后,我试图从route_id
表中获取routes
。我已将prep.executeUpdate()
更改为prep.executeQuery()
,但我收到此错误:
java.sql.SQLException:无法使用executeQuery()发出数据操作语句。 在com.mysql.jdbc.SQLError.createSQLException(SQLError.java:998) 在com.mysql.jdbc.SQLError.createSQLException(SQLError.java:937)
代码:
DatabaseMetaData dbm = con.getMetaData();
ResultSet routesTables = dbm.getTables(null, null, "routes", null);
if (routesTables.next()) {
PreparedStatement prep = con
.prepareStatement("INSERT INTO routes(direction, route)"
+ "VALUES( ?, ?)");
prep.setString(1, direction);
prep.setInt(2, route);
ResultSet rs = prep.executeQuery();
}
如何在这种情况下ResultSet rs = prep.executeQuery();
获取route_id?目前我收到上述错误。
我感谢任何帮助。
答案 0 :(得分:2)
您必须为prep.executeUpdate();
调用insert语句。
不是ResultSet rs = prep.executeQuery();
。 prep.executeQuery();
仅适用于选择查询。