微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在 PL/SQL 中捕获 SQL/开发人员脚本输出

如何解决在 PL/SQL 中捕获 SQL/开发人员脚本输出

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.

解决方法

使用SQL%ROWCOUNT

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

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。