【问题标题】:Capture SQL/Developer Script Output in PL/SQL在 PL/SQL 中捕获 SQL/开发人员脚本输出
【发布时间】:2021-04-30 16:43:01
【问题描述】:

在 SQL/Developer 中,当我执行一条语句时,我会收到一条脚本输出消息,其内容类似于 7 Records Merged

这是我的相关 PL/SQL 代码:

v_sql_loader := 'merge into foobar b using foobiz i on (b.foobar_id = i.foobiz_id) when not matched then insert (foobar_id) values (foobiz_id)';

execute immediate v_sql_loader;

如何在 PL/SQL 中捕获7 records Merged

我正在写 dbms_output.put_line(SQLERRM) 但那只会返回 ORA-0000: normal, successful completion

我可以使用什么 Oracle/PLSQL 对象来复制 SQL/开发者脚本输出消息?

期望结果:PLSQL 语句,最好是dbms_output.put_line();表示7 Records Merged.

【问题讨论】:

    标签: oracle plsql oracle12c dbms-output


    【解决方案1】:

    使用SQL%ROWCOUNT:

    BEGIN
       ...
       EXECUTE IMMEDIATE v_sql_loader;
       DBMS_OUTPUT.PUT_LINE('Merged: ' || SQL%ROWCOUNT);
    END;
    /
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-07-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-05
      • 1970-01-01
      相关资源
      最近更新 更多