SQL中关于rowcount的用法
在SQL中,ROWCOUNT是一个系统变量,用于返回最后一个履行的SQL语句所影响的行数。它可以用于判断SQL语句的履行结果,和在编写存储进程或触发器时进行逻辑控制。
以下是ROWCOUNT的常见用法:
1. 用于判断DELETE、UPDATE、INSERT语句的履行结果:
```
DELETE FROM table_name WHERE condition;
IF ROWCOUNT > 0
BEGIN
PRINT '删除成功';
END
ELSE
BEGIN
PRINT '删除失败';
END
UPDATE table_name SET column_name = value WHERE condition;
IF ROWCOUNT > 0
BEGIN
PRINT '更新成功';
END
ELSE
BEGIN
PRINT '更新失败';
END
INSERT INTO table_name (column1, column2, ...)
VALUES (value1, value2, ...);
IF ROWCOUNT > 0
BEGIN
PRINT '插入成功';
END
ELSE
BEGIN
PRINT '插入失败';
END
```
2. 用于判断SELECT语句的履行结果:
```
SELECT column1, column2, ...
FROM table_name
WHERE condition;
IF ROWCOUNT > 0
BEGIN
PRINT '查询到结果';
END
ELSE
BEGIN
PRINT '未查询到结果';
END
```
3. 用于循环操作:
```
DECLARE @count INT = 0;
WHILE @count < 10
BEGIN
-- 履行某个操作
SET @count = @count + 1;
END
PRINT '循环履行了 ' + CAST(@count AS VARCHAR) + ' 次';
```
需要注意的是,ROWCOUNT的值在每次履行SQL语句后会被重置为当前语句所影响的行数,并且只返回最后一个履行的SQL语句的行数,所以在使用ROWCOUNT之前需要确保它的值是我们所期望的。
TOP