尝试执行SELECT查询时抛出PSQLException

时间:2015-05-06 22:02:20

标签: java sql jdbc

我的SQL请求有问题,当我运行请求时,收到此消息错误:

org.postgresql.util.PSQLException: A result was returned when none was expected.

这是我的要求:

Connexion con = new Connexion();  

try {
  c = con.Connect();
  stmt = c.createStatement();

  int sqlCalcul = stmt.executeUpdate(
      "SELECT inventaire FROM calcul WHERE designation='" + designation + 
      "' AND date=(SELECT MAX(date) FROM calcul)");

  stmt.close();
  // c.commit();
  c.close();
} catch (Exception e) {
  System.err.println(e.getClass().getName() + ": " + e.getMessage());
  System.exit(0);
}
System.out.println("Records created successfully");

1 个答案:

答案 0 :(得分:2)

您应该使用executeQuery代替executeUpdate

ResultSet sqlCalcul = stmt.executeQuery("SELECT inventaire...")

executeUpdate用于INSERTUPDATEDELETE语句,如果返回ResultSet则会抛出异常。 executeQuery应该用于SELECT语句。

使用JDBC驱动程序查看PostgreSQL's tutorial以获取更多信息。