使用Groovy SQL计算受影响的行

时间:2014-07-29 18:09:11

标签: sql groovy sql-insert sql-delete

假设我有以下SQL表定义:

create table test(
    id number(5) primary key
);

此外,我想通过使用Groovy的SQL支持在该表上执行INSERTDELETE语句。

给出以下代码,执行INSERT语句:

Sql db = new Sql(some_dataSource)
String query = "insert into test (id) values (999)"
def result = db.execute(query)
  • 在此代码中,我可以知道test中插入了多少行(在本例中为1)?

  • result变量对确定这个变量有用吗?

我已尝试查看Groovy的SQL支持文档herehere,但提供的示例似乎只计算SELECT个语句中的行数。

谢谢!

1 个答案:

答案 0 :(得分:2)

您可以使用Sql.getUpdateCount()获取插入的行数。例如:

db.execute(query)
println db.updateCount

execute的返回值是一个布尔值,表示语句是否成功执行。

Sql.execute()的API文档有完整的解释。