在SQL中,ROWCOUNT是一個系統(tǒng)變量,用于返回最后一個執(zhí)行的SQL語句所影響的行數(shù)。它可以用于判斷SQL語句的執(zhí)行結(jié)果,以及在編寫存儲過程或觸發(fā)器時進行邏輯控制。
以下是ROWCOUNT的常見用法:
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
SELECT column1, column2, ...
FROM table_name
WHERE condition;
IF ROWCOUNT > 0
BEGIN
PRINT '查詢到結(jié)果';
END
ELSE
BEGIN
PRINT '未查詢到結(jié)果';
END
DECLARE @count INT = 0;
WHILE @count < 10
BEGIN
-- 執(zhí)行某個操作
SET @count = @count + 1;
END
PRINT '循環(huán)執(zhí)行了 ' + CAST(@count AS VARCHAR) + ' 次';
需要注意的是,ROWCOUNT的值在每次執(zhí)行SQL語句后會被重置為當(dāng)前語句所影響的行數(shù),并且只返回最后一個執(zhí)行的SQL語句的行數(shù),所以在使用ROWCOUNT之前需要確保它的值是我們所期望的。