●●●如何通过参数将所检索的记录总数返回?●●●
如题。
例如我我创建如下一个存储过程。(SQL SERVER2000)
Create Procedure upGetRecords
@sName NVARCHAR(20),
@nCount int output
As
SELECT * FROM My_Table WHERE Name=@sName --这是所得到的记录集
--但是如何才能将所得到的记录集的总数返回给参数@nCount呢?(请赐教)
--能用如下的代码吗?
SELECT COUNT(*) AS REC_COUNT FROM My_Table WHERE Name=@sName
SELECT @nCount= -- 在此处如何赋值?
--如果按照我的这样写法,得到的结果集岂不是有两个?我在Vc中如何识别?
--我最想实现的是能返回一个记录集,然后将符合我检索条件的记录的记录总数返回给@nCount值,希望大家帮忙。
return @@Error
------解决方案-------------------- SELECT @nCount=COUNT(*) AS REC_COUNT FROM My_Table WHERE Name=@sName
--或者
SET @nCount=@@ROWCOUNT
------解决方案--------------------declare @Count
SELECT COUNT(*) AS REC_COUNT FROM My_Table WHERE Name=@sName
SET @Count=@@ROWCOUNT
(@@ROWCOUNT 返回受上一语句影响的行数。)