无法使用executeQuery()

时间:2015-06-18 13:14:26

标签: java jdbc

我正在使用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?目前我收到上述错误。

我感谢任何帮助。

1 个答案:

答案 0 :(得分:2)

您必须为prep.executeUpdate();调用insert语句。 不是ResultSet rs = prep.executeQuery();prep.executeQuery();仅适用于选择查询。