如何在Groovy中收集sql行

时间:2016-12-12 13:43:32

标签: mysql sql groovy

我正在尝试在groovy脚本中的SQL行集上创建流collect,但输出是一个空数组。在封闭内部调用打印工作。

关于如何处理所有行而不必在第一个闭包中使用它们而不引用超出范围的变量的任何想法?

import groovy.sql.Sql

def sql = Sql.newInstance("jdbc:mysql://localhost", "login", "password", "com.mysql.jdbc.Driver")

// Display databases
println "Databases: "
println sql.eachRow("SHOW databases") {row -> "${row[0]}"}.collect()

非常感谢任何帮助,谢谢!

1 个答案:

答案 0 :(得分:1)

查看onchangeeachRow方法都没有返回集合。

也许试试:

println sql.rows("SHOW databases").collect { row -> "${row[0]}" }