如果在Groovy中没有返回任何行,如何处理

时间:2014-08-30 08:43:17

标签: groovy

我有以下代码:

sql.eachRow(query){
   def i=1
   println("$i --> $it.columnName") 
   i++
}

如果查询返回一些记录(行),则没有问题。

但是如果查询返回0条记录,那么我应该如何处理呢。我想显示一条用户友好的消息,例如 ZERO RECORDS FOUND

2 个答案:

答案 0 :(得分:1)

def i=0
sql.eachRow(query) {
  i++
  println(i+" --> "+ it.columnName) 
}

if (i == 0) {
  println "ZERO RECORDS FOUND"
}

答案 1 :(得分:0)

def rows = sql.rows(query)
if (rows.empty) {
    // logic for handling no rows
} else if (rows.any { it.name == 'something' }) {
    // logic for handling isExists == true
} else {
    // logic for handling isExists == false
}

我不确定您的具体情况是什么,但可能会在name == 'something'的SQL级别立即检查WHERE name = 'something'条件。然后,您可以在 if 语句中删除其中一个逻辑块。