2014-01-22 51 views
16

我试图将数据插入到表中。执行查询后,我得到一个异常说明PostgreSQL中的查询错误返回的结果

org.postgresql.util.PSQLException: No results were returned by the query. 
org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:284) 

是越来越成功插入的数据,但我不知道为什么我收到此异常?的

回答

38

使用

executeUpdate 

代替

executeQuery 

如果没有数据将被返回(即非SELECT操作)。

+0

美容后使用此代码!完美的作品..但Ÿ它就像executeUpdate工程,但executeQuery不工作?在这两种情况下,数据都会正确插入。 –

+0

@RageshKr,它被正确插入,但Java数据库连接器后来期待数据,而没有。所以在插入后发生错误。 –

+0

Thanx @PaulDraper –

0

如果你想最后生成的ID,您可以使用方法executeUpdate()

int update = statement.executeUpdate() 
ResultSet rs = statement.getGeneratedKeys(); 
if (rs != null && rs.next()) { 
    key = rs.getLong(1); 
}