我在SQL Server中有一个像这样执行的存储过程
EXEC @return_value = SP
@value1 = 'A',
@value2 = 'B'
结果是:
value3 | value 4 | value 5
我需要将value1和value2列添加到结果中(是的,我用来执行存储过程的相同)。没有机会更改存储过程,因为它来自另一个项目。有可能吗?
我经常与甲骨文合作,所以我不知道这可能是一件简单的事,或者说它可能无法完成。
感谢您的回答!
答案 0 :(得分:2)
将Proc Results存储到临时表。
https://stackoverflow.com/a/1228165/6167855
然后执行类似
的操作SELECT @value1, @value2, t.* FROM #TempTable t
答案 1 :(得分:0)
不改变存储过程,获得所需结果的一种方法是
select *,
@value1,
@value2
from openrowset
('SQLNCLI',
'Server=yourinstancename;
Trusted_Connection=yes;',
'EXEC yourproc ''variables''')
注意,如果你得到两个结果集,第二个将被忽略