Trong Oracle PL / SQL, biến hệ thống để lưu trữ số lượng hàng đã xóa / chèn / cập nhật là:
SQL%ROWCOUNT
Sau câu lệnh DELETE / INSERT / UPDATE và TRƯỚC KHI CAM KẾT, bạn có thể lưu trữ SQL% ROWCOUNT trong một biến kiểu NUMBER. Hãy nhớ rằng COMMIT hoặc ROLLBACK được đặt lại thành KHÔNG giá trị của SQL% ROWCOUNT, vì vậy bạn phải sao chép giá trị SQL% ROWCOUNT trong một biến TRƯỚC KHI COMMIT hoặc ROLLBACK.
Ví dụ:
BEGIN
DECLARE
affected_rows NUMBER DEFAULT 0;
BEGIN
DELETE FROM feeds_item
WHERE shareurl = re1;
affected_rows := SQL%ROWCOUNT;
DBMS_OUTPUT.
put_line (
'This DELETE would affect '
|| affected_rows
|| ' records in FEEDS_ITEM table.');
ROLLBACK;
END;
END;
Tôi cũng đã tìm thấy GIẢI PHÁP thú vị này (nguồn: http://markmail.org/message/grqap2pncqd6w3sp )