我有一个查询,只是希望显示rowcount,而不是我正在调用的proc的结果。
例如:
exec GetSomething
@UserID = 112233,
@MaxAge = 50,
... etc.
SET @Count = @@rowcount
SELECT @Count
在选择计数之前,不仅会返回计数,还会返回第一个记录集的结果记录列表。
我怎样才能统计这一点但不显示记录集结果?
答案 0 :(得分:1)
DECLARE @Something TABLE (
...
)
INSERT INTO @Something
EXECUTE GetSomething
@UserID = 112233,
@MaxAge = 50,
... etc.;
SET @Count = @@rowcount
SELECT @Count
答案 1 :(得分:0)
您可以尝试使用OPENROWSET,但必须确保它已启用:
SELECT count(*) FROM OPENROWSET('SQLNCLI', 'Server=(local)\SQL2008;Trusted_Connection=yes;',
'EXEC GetSomething')
启用OPENROWSET:
sp_configure 'Show Advanced Options', 1
GO
RECONFIGURE
GO
sp_configure 'Ad Hoc Distributed Queries', 1
GO
RECONFIGURE
GO
请参阅OPENROWSET上的MSDN:http://msdn.microsoft.com/en-us/library/ms190312.aspx