我正在尝试列出数据库中的过程和触发器,但我必须使用过程或函数来这样做。
这个查询返回的正是我需要的,但我需要使用 PL/SQL 获得相同的结果。
select *
from all_source
where type = 'PROCEDURE'
这个查询返回的正是我需要的,但我必须使用 PL/SQL 获得相同的结果。
谢谢
尝试以下程序,
CREATE OR REPLACE
PROCEDURE get_proc_list(
i_type IN VARCHAR2,
o_result OUT sys_refcursor)
IS
l_type VARCHAR2(10) := UPPER(i_type);
BEGIN
OPEN o_result FOR
SELECT * FROM all_source
WHERE TYPE = l_type;
END;
要执行该程序,
var o_result refcursor;
EXECUTE get_proc_list('procedure',:o_result);
print o_result;
尝试这个
declare record all_source%ROWTYPE
begin
select * into record from all_source where type = ?
end;