我有一个 PL/SQL 函数(在 Oracle 10g 上运行),我在其中更新了一些行。有没有办法找出 UPDATE 影响了多少行?手动执行查询时,它告诉我有多少行受到影响,我想在 PL/SQL 中获取该数字。
您使用sql%rowcount变量。
sql%rowcount
您需要在需要查找受影响的行数的语句之后直接调用它。
例如:
set serveroutput ON; DECLARE i NUMBER; BEGIN UPDATE employees SET status = 'fired' WHERE name LIKE '%Bloggs'; i := SQL%rowcount; --note that assignment has to precede COMMIT COMMIT; dbms_output.Put_line(i); END;