PL/SQLのUPDATEによって影響を受ける行数 質問する

PL/SQLのUPDATEによって影響を受ける行数 質問する

いくつかの行を更新する PL/SQL 関数 (Oracle 10g で実行) があります。UPDATE によって影響を受けた行数を確認する方法はありますか? クエリを手動で実行すると、影響を受けた行数が示されます。その数を PL/SQL で取得したいと思います。

ベストアンサー1

変数を使用します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; 

おすすめ記事