有什么方法可以获取存储过程使用的参数(可以通过 ofSQL
的示例PL/SQL
)?
从视图USER_PROCEDURES
中,我只能检查标志、存在和执行权限,但不能检查输入参数及其类型。
[dba][all][user]_arguments数据字典视图允许您查看存储过程的参数:
/* test procedure */
create or replace procedure P1(
p_par1 in number,
p_var2 in number,
p_cursor out sys_refcursor
)
as
begin
null;
end;
/* list all formal parameters of P1 stored procedure */
select argument_name
, t.position
, t.data_type
from user_arguments t
where object_name = 'P1'
结果:
Argument_Name Position Data_Type
---------------------------------
P_CURSOR 3 REF CURSOR
P_VAR2 2 NUMBER
P_PAR1 1 NUMBER