在PL/SQL中,可以通过使用DBMS_UTILITY.FORMAT_CALL_STACK
和DBMS_UTILITY.FORMAT_ERROR_BACKTRACE
函数来查看正在执行的SQL。下面是一个示例代码:
DECLARE
v_sql VARCHAR2(32767);
BEGIN
-- 获取正在执行的SQL
v_sql := DBMS_UTILITY.FORMAT_CALL_STACK;
-- 打印正在执行的SQL
DBMS_OUTPUT.PUT_LINE(v_sql);
-- 获取错误的SQL
v_sql := DBMS_UTILITY.FORMAT_ERROR_BACKTRACE;
-- 打印错误的SQL
DBMS_OUTPUT.PUT_LINE(v_sql);
END;
在上面的例子中,DBMS_UTILITY.FORMAT_CALL_STACK
函数返回当前正在执行的SQL,而DBMS_UTILITY.FORMAT_ERROR_BACKTRACE
函数返回最近的错误信息中的SQL。你可以根据需要将这些SQL保存到变量中,然后进行进一步的处理或输出。
辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
推荐阅读: plsql怎么导出创建表的sql