@@ROWCOUNT (Transact-SQL)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了@@ROWCOUNT (Transact-SQL)相关的知识,希望对你有一定的参考价值。

@@ROWCOUNT (Transact-SQL)

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

 Transact-SQL 语法约定

语法


@@ROWCOUNT
返回类型

int

备注

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

将 @@ROWCOUNT 设置为受影响或被读取的行的数目。可以将行发送到客户端,也可以不发送。

保留前一个语句执行中的 @@ROWCOUNT。

将 @@ROWCOUNT 重置为 0 但不将该值返回到客户端。

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

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

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

DECLARE CURSOR 和 FETCH 将 @@ROWCOUNT 值设置为 1。

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

USE、SET option、DEALLOCATE CURSOR、CLOSE CURSOR、BEGIN TRANSACTION 或 COMMIT TRANSACTION 等语句将 ROWCOUNT 值重置为 0。

示例

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

USE AdventureWorks;
GO
UPDATE HumanResources.Employee 
SET Title = NExecutive
WHERE NationalIDNumber = 123456789
IF @@ROWCOUNT = 0
PRINT Warning No rows were updated;
GO

转载:提示符 也玩 博客  

@@ROWCOUNT (Transact-SQL)

以上是关于@@ROWCOUNT (Transact-SQL)的主要内容,如果未能解决你的问题,请参考以下文章

sql中的SET NOCOUNT ON/OFF

SQL Server中Rowcount与@@Rowcount的用法

SqlServer---RowCount 和 @@RowCount的用法和区别

SQL Server中Rowcount与@@Rowcount的用法

rowcount和@@rowcount的区别

SQL Server中Rowcount与@@Rowcount的用法