我有一个可以工作的存储过程,它根据 where 子句进行选择。但是,当我尝试从我的 grails 应用程序中调用它时,我收到错误说索引 1 超出范围。我的代码如下
class SQLTestController {
def dataSource
def index() {
Sql sql = new Sql(dataSource)
def result = sql.call("SelectFromTemp","Test")
[result:result]
}
我想将返回的值作为结果传递,然后将其显示在我的视图中。“SelectFromTemp”是我的过程名称,我正在传递参数“Test”我的 sp 是
SelectFromTemp(
@headertestcase varchar(max)
)
AS
SET NOCOUNT ON;
Select * from dbo.tempTable where HeaderTestCase=@headertestcase
(尝试了提到使用http://groovy.codehaus.org/Database+features的建议)
sql.call '{call SelectFromTemp(?)}', ['Test', Sql.VARCHAR], { dwells ->
println dwells //
}