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