我有以下Groovy代码从’topic’表中的’id’列返回最大值:
def rs = sql.executeQuery("select max(id) from topic") def maxId = rs.getLong(1)
它不起作用,我收到以下错误:
java.sql.SQLException: Invalid column index
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:113)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:147)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:209)…
有谁知道正确的代码是什么?
谢谢.
解决方法
我认为如果你使用firstRow方法会更容易.您可以通过名称或索引从结果对象中获取值.
按名字:
def row = sql.firstRow("select max(id) as max from topic") def maxId = row.max
按索引:
def row = sql.firstRow("select max(id) from topic") def maxId = row[0]