CREATE PROCEDURE [dbo].[AddUser]
@networkID varchar(512),
@id uniqueidentifier OUTPUT
....
使用以下Groovy代码:
networkAliasID = 'aschoewe_test'
sql.call("{call AddUser(?, ${Sql.VARCHAR}) }", [networkAliasID]) { s ->
println "userID: ${s}"
}
java.sql.SQLException: Incorrect syntax near '.'.
这是因为它不喜欢代码中的“Sql”部分(尽管我见过的所有示例都是这样)。如果我将代码改为:
networkAliasID = 'aschoewe_test'
String userID = null
sql.call("{call AddUser(?, ?) }", [networkAliasID, userID]) { s ->
println "userID: ${s}"
println "userID: ${userID}"
}
代码已执行,但我无法获取新的用户标识。代码执行完毕后,“s”和“userID”都为空。
我是不是做错了什么?这是MSSQL的问题吗?返回类型是UNIQUEIDENTIFIER是否有问题?使用jtbc的JTDS文档显示了jtbc的类型。
安得烈