Java 无法使用executeQuery()发出数据操作语句
我正在向数据库中注入JSON文件,并尝试在插入路由和方向(以及插入的方向和路由记录)后从Java 无法使用executeQuery()发出数据操作语句,java,jdbc,Java,Jdbc,我正在向数据库中注入JSON文件,并尝试在插入路由和方向(以及插入的方向和路由记录)后从routes表中获取route\u id。我已将prep.executeUpdate()更改为prep.executeQuery(),但我收到以下错误: java.sql.SQLException:无法使用executeQuery()发出数据操作语句。 位于com.mysql.jdbc.SQLError.createSQLException(SQLError.java:998) 位于com.mysql.jdb
routes
表中获取route\u id
。我已将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();
}
在这种情况下,如何获取路由_idResultSet rs=prep.executeQuery()代码>?目前我得到上面的错误
非常感谢您的帮助。您必须致电prep.executeUpdate()。
不ResultSet rs=prep.executeQuery()代码><代码>准备执行任务()
仅用于选择查询。然后我可以像这样获取route\u id
int rs=prep.executeUpdate()代码>?@light否如果您需要id,请在RSI中获得受影响的行
,请参见此处