我有一个 sproc,我无法修改它的签名,它的最后一行有一个 SELECT 语句:
SELECT userid = @userid
其中@userid 在存储过程中声明(未传入)。有没有办法在 sproc 之外的变量中捕获 userid 的值?
如果我想通过修改最后一行来捕获两个值:
SELECT userid = @userid, somevar = @somevar
这会影响正在使用此存储过程的任何现有代码路径(例如在 .NET 中进行的调用)吗?如果不是,我如何捕获存储过程之外的两个值?
这些捕获都将在 SQL 中完成,而不是应用程序语言。