0
正确地结束我有一个Oracle SQL语句正常工作:ORA-00933:SQL命令未在PreparedStatement的
select user_id,email from app_users where user_id in (select user_id from app_users_groups where group_id = ?);
我运行此,我得到我预期的结果,但是我试图运行在Java中通过以下:
try (Connection conn = dataSource.getConnection()) {
try (PreparedStatement ps = conn.prepareStatement("select user_id,email from app_users where user_id in (select user_id from app_users_groups where group_id = ?);")) {
ps.setInt(1, groupId);
try (ResultSet rs = ps.executeQuery()) {
while(rs.next()) {
}
}
}
} catch (SQLException e) { }
但是我失败在ps.executeQuery
用的SQLException ORA-00933:SQL命令未正确结束。
我不太确定问题出在哪里,虽然我确定这是简单的我很想念。
谢谢
在查询结尾处删除分号 –
您应该发布堆栈跟踪 – 2016-02-04 20:25:30
德米特里是正确的:您需要删除String内的';'。但是,您还应该在子查询中完全限定列名'user_id'以避免名称冲突。 –