从DB获取值时出错

时间:2014-07-16 09:37:57

标签: sql sql-server groovy sql-server-2012

我想通过Groovy从SQL Server获取值。

Sql.withInstance("jdbc:jtds:sqlserver://localhost;instance=SQLEXPRESS;",
           'login',
           'password',
           'net.sourceforge.jtds.jdbcx.JtdsDataSource') {
    it.execute("use Base")
    it.rows("select * from table") {
        List val = it.values()                 
    }
...
}

方法rows()应该返回List<GroovyRowResult>,但我有:

  

groovy.lang.MissingMethodException:没有方法签名:net.sourceforge.jtds.jdbc.JtdsResultSetMetaData.get()适用于参数类型:()值:[]

我做错了什么以及如何从数据库中获取值?

1 个答案:

答案 0 :(得分:1)

因为当你使用List val = it.values()时,&#34;它&#34;是JtdsResultSetMetaData。那不是你的期望ResultSet和JtdsResultSetMetaData没有values()方法所以会得到异常。您可以使用此代码尝试获取ResultSet

    Sql.withInstance("jdbc:jtds:sqlserver://localhost;instance=SQLEXPRESS;",
           'login',
           'password',
           'net.sourceforge.jtds.jdbcx.JtdsDataSource') {
    it.execute("use Base")
    List val = it.rows("SELECT * FROM table")
    print val
...
}
相关问题