【发布时间】:2009-07-28 16:46:03
【问题描述】:
我有一个现有的 SQL 2005 存储过程,由于某种原因,它在 SSMS 的 Messages 窗格而不是 Results 窗格中输出其结果。 (其实是一个CLR程序,已经编译部署到我们所有的服务器上,用于另外一个日常进程。所以我不能改变它,我只想使用它的输出。)
为了便于讨论,这里有一个行为相同的存储过程:
CREATE PROCEDURE [dbo].[OutputTest]
@Param1 int, @Param2 varchar(100)
AS
BEGIN
SET NOCOUNT ON;
PRINT 'C,10000,15000';
PRINT 'D,30000,90000';
PRINT 'E,500,50000';
END
因此其中没有实际的 SELECT 语句,如果您运行它,您将只能在“消息”窗格中看到这些结果。
我有什么方法可以使用这些结果作为更大查询的一部分吗?将它们放在临时表或其他东西中,以便我可以将它们解析出来?
“正常的东西”都不起作用,因为这里没有真正的“输出”:
INSERT INTO #output
EXEC OutputTest 100, 'bob'
只是显示
C,10000,15000
D,30000,90000
E,500,50000
(0 row(s) affected)
在消息窗格中,临时表实际上并没有放入任何内容。
【问题讨论】:
标签: sql-server sql-server-2005 ssms