sql server @@ROWCOUNT 会被 if 给 清 0

本文涉及的产品
云数据库 RDS SQL Server,独享型 2核4GB
简介: 官方说 @@ROWCOUNT  会被以下几种语句清0 原文如下: Statements such as USE, SET , DEALLOCATE CURSOR, CLOSE CURSOR, BEGIN TRANSACTION, or COMMIT TRANSACTION reset the ROWCOUNT value to 0.

官方说 @@ROWCOUNT  会被以下几种语句清0

原文如下:

Statements such as USE, SET <option>, DEALLOCATE CURSOR, CLOSE CURSOR, BEGIN TRANSACTION, or COMMIT TRANSACTION reset the ROWCOUNT value to 0.

 

可是实际情况有可能远不止这些:

例如:

print(@@ROWCOUNT ) 也会将@@ROWCOUNT清0 

if @@ROWCOUNT > 0 也会将 @@ROWCOUNT 清0 

真是奇葩啊

相关实践学习
使用SQL语句管理索引
本次实验主要介绍如何在RDS-SQLServer数据库中,使用SQL语句管理索引。
SQL Server on Linux入门教程
SQL Server数据库一直只提供Windows下的版本。2016年微软宣布推出可运行在Linux系统下的SQL Server数据库,该版本目前还是早期预览版本。本课程主要介绍SQLServer On Linux的基本知识。 相关的阿里云产品:云数据库RDS&nbsp;SQL Server版 RDS SQL Server不仅拥有高可用架构和任意时间点的数据恢复功能,强力支撑各种企业应用,同时也包含了微软的License费用,减少额外支出。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/sqlserver
相关文章
|
SQL 时序数据库
Influx Sql系列教程六:insert 修改数据
在influxdb中没有专门的修改数据的update语句,对于influxdb而言,如果想修改数据,还是得使用我们前面的说到的insert来实现,那么怎么判断一条insert语句是插入还是修改呢?
669 0
Sql Server实现limit用法
Sql Server实现limit用法
790 0
Sql Server实现limit用法
|
SQL 调度
SQL Server中SELECT会真的阻塞SELECT吗?
原文:SQL Server中SELECT会真的阻塞SELECT吗? 在SQL Server中,我们知道一个SELECT语句执行过程中只会申请一些意向共享锁(IS) 与共享锁(S), 例如我使用SQL Profile跟踪会话86执行SELECT * FROM dbo.TEST WHERE OBJECT_ID =1 这个查询语句,其申请、释放的锁资源的过程如下所示:     而且从最常见的锁模式的兼容性表,我们可以看到IS锁与S锁都是兼容的,也就是说SELECT查询是不会阻塞SELECT查询的。
1094 0
|
SQL Go
sql server 带有OUTPUT的INSERT,DELETE,UPDATE
原文:sql server 带有OUTPUT的INSERT,DELETE,UPDATE OUTPUT是SQL SERVER2005的新特性.
1175 0
|
SQL 关系型数据库 Oracle
|
SQL 数据库 索引
SQL SERVER中UPDLOCK ,READPAST使用
原文:SQL SERVER中UPDLOCK ,READPAST使用 SQL SERVER中中获取不重复数据: select top 1 * from orders with(UPDLOCK ,READPAST,RowLock) where Id=1 READPAST 指定数据库引擎不读取由其他事务锁定的行。
1256 0