postgres 9 | jdk 7.45 |不规则"查询未返回任何结果"

时间:2013-11-08 13:33:40

标签: java sql jdbc jdbc-postgres

自从昨天以来,这件事让我变得愚蠢(在没有找到任何其他同样问题的开发人员的情况下搜索了很多内容)。 我正在使用postgresql 9将用java(jdk5)编写的应用程序服务器(使用postgresql 7)升级到jdk7。

简单&荒谬的问题:

同一语句中的INSERT和SELECT:

insert into table(a,b) values('a','b') ; select currval('table_pkey_id')

没什么特别的,看似简单明了..但是使用postgresql-9.3-1100.jdbc3.jar不能正常工作,会在主题中引发错误。

sql语句像往常一样使用pgadmin,返回插入行的id。 但是使用带有pg9 / java7的javam进行相同的查询,它会抛出错误,就像我在一个简单的insert语句中使用executeQuery一样。

stmt=cnn.createStatement(rst.TYPE_SCROLL_INSENSITIVE,rst.CONCUR_READ_ONLY);
stmt.executeQuery(sql);

org.postgresql.util.PSQLException:查询未返回任何结果。“

为什么上帝?!我想要并且需要解决这个问题,而不要破坏上面的2个sql语句。 在executeQuery实现中似乎是一个非常愚蠢的错误。

请反馈。感谢。

最大

1 个答案:

答案 0 :(得分:0)

我认为你最好转到:

insert into table(a,b) values('a','b') RETURNING id;

现在所有受支持的PostgreSQL版本都支持RETURNING。