SQL中@@ROWCOUNT函数

返回受上一语句影响的行数。如果行数大于20亿,请使用ROWCOUNT_BIG。

语法

@@ROWCOUNT


SQL中@@ROWCOUNT函数 - xiao_mege - xiao_mege的博客返回类型

int


SQL中@@ROWCOUNT函数 - xiao_mege - xiao_mege的博客注释

Transact-SQL语句可以通过下列方式设置@@ROWCOUNT的值:


将@@ROWCOUNT设置为 受影响或被读取的行的数目。可以将行发送到客户端,也可以不发送。
保留前一个语句执行中的@@ROWCOUNT。
将@@ROWCOUNT重置为0但不将该值返回到客户端。

执行简单分配的语句始终将@@ROWCOUNT值设置为1。不将任何行发送到客户端。这些语句的示例如下:SET@local_variable、RETURN、READTEXT以及不带查询Select语句,如SELECTGETDATE()或SELECT'GenericText'。

在查询中执行分配或使用RETURN的语句将@@ROWCOUNT值设置为受查询影响或由查询读取的行数,例如:SELECT@local_variable=c1FROMt1。

数据操作语言(DML)语句将@@ROWCOUNT值设置为受查询影响的行数,并将该值返回到客户端。DML语句不会将任何行发送到客户端。

DECLARECURSOR和FETCH将@@ROWCOUNT值设置为1。

EXECUTE语句保留前一个@@ROWCOUNT。

USE、SET<option>、DEALLOCATECURSOR、CLOSECURSOR、BEGINTRANSACTION或COMMITTRANSACTION等语句将ROWCOUNT值重置为0。


SQL中@@ROWCOUNT函数 - xiao_mege - xiao_mege的博客示例

以下示例执行
UPDATE
语句并使用
@@ROWCOUNT
来检测是否更改了任何一些行。

 USE AdventureWorks2008R2;
 GO UPDATE HumanResources.Employee SET JobTitle = N'Executive'
 WHERE NationalIDNumber = 123456789 
 IF @@ROWCOUNT = 0 
 PRINT 'Warning: No rows were updated'; 
 GO

------------

实例:

selecttop11*fromIPP3..Product
select@@ROWCOUNT,ROWCOUNT_BIG()

返回上一语句影响的行数

------------------------

你可能感兴趣的:(客户端,影响)