ROWCOUNT是SQL Server中的一个系统变量,用于获取最后一个执行的SELECT、INSERT、UPDATE或DELETE语句所影响的行数。
使用ROWCOUNT可以在编写存储过程或触发器时判断前一个操作是否影响了行数,从而根据需要执行后续的操作。
以下是ROWCOUNT的常见用法:
获取影响的行数:
SELECT * FROM table_name;
SELECT @@ROWCOUNT;
通过执行SELECT语句后,使用@@ROWCOUNT获取查询结果影响的行数。
判断是否有影响行数:
UPDATE table_name SET column1 = value WHERE condition;
IF @@ROWCOUNT > 0
BEGIN
--执行操作
END
在执行UPDATE语句后,使用IF语句判断是否有行受到影响,如果有则执行操作。
在触发器中使用ROWCOUNT:
CREATE TRIGGER trigger_name
ON table_name
AFTER UPDATE
AS
IF @@ROWCOUNT > 0
BEGIN
--执行操作
END
在触发器中,可以使用ROWCOUNT判断更新操作是否影响了行数,并根据需要执行后续操作。
需要注意的是,ROWCOUNT只返回最后一个执行的语句所影响的行数,如果需要获取多个语句影响的行数,可以将其保存到变量中进行处理。