答案 0 :(得分:2)
调用FullName存储过程的示例,该过程采用参数(示例中为“Sam”)并返回VARCHAR。
sql.call("{? = call FullName(?)}", [Sql.VARCHAR, 'Sam']) { name ->
assert name == 'Sam Pullara'
}
同样的例子,但有一个GString变种:
def first = 'Sam'
sql.call("{$Sql.VARCHAR = call FullName($first)}") { name ->
assert name == 'Sam Pullara'
}
以下是带有out参数的存储过程的示例:
sql.call '{call Hemisphere(?, ?, ?)}', ['Guillaume', 'Laforge', Sql.VARCHAR], { dwells ->
println dwells // => Northern Hemisphere
}
参考this。