Oracle中的存储没有参数,oracle的存储过程参数信息存储在那个系统表中?多谢

好象没有。

自己写一个如何。

我做了一些尝试,对于PACKAGE已经成功,对于PROCEDURE好象还有些问题。

SQL> conn sys/wyq as sysdba

Connected.

SQL> Create view dba_proc_args as

2  Select o.Owner, o.Object_Name package_name, p.Procedurename, a.Procedure$, a.Argument

3    From Argument$ a,

4         (Select Procedure#, Procedurename, Obj# From Procedureinfo$) p,

5         (Select Object_Id, Object_Name, Owner

6            From Dba_Objects

7           Where Object_Type In ('PROCEDURE', 'FUNCTION', 'PACKAGE')) o

8   Where a.Procedure#(+) = p.Procedure#

9     And a.Procedure$(+) = p.Procedurename

10     And p.Obj# = o.Object_Id;

View created.

SQL> column package_name format a20

SQL> column owner format a10

SQL> select * from dba_proc_args where package_name = 'DBMS_OUTPUT';

OWNER      PACKAGE_NAME         PROCEDURENAME                  PROCEDURE$                     ARGUMENT

---------- -------------------- ------------------------------ ------------------------------ ------------------------------

SYS        DBMS_OUTPUT          ENABLE                         ENABLE                         BUFFER_SIZE

SYS        DBMS_OUTPUT          DISABLE                        DISABLE

SYS        DBMS_OUTPUT          DISABLE                        DISABLE

SYS        DBMS_OUTPUT          PUT                            PUT                            A

SYS        DBMS_OUTPUT          PUT                            PUT                            A

SYS        DBMS_OUTPUT          PUT_LINE                       PUT_LINE                       A

SYS        DBMS_OUTPUT          PUT_LINE                       PUT_LINE                       A

SYS        DBMS_OUTPUT          NEW_LINE                       NEW_LINE

SYS        DBMS_OUTPUT          GET_LINE                       GET_LINE                       STATUS

SYS        DBMS_OUTPUT          GET_LINE                       GET_LINE                       LINE

SYS        DBMS_OUTPUT          GET_LINES                      GET_LINES                      NUMLINES

SYS        DBMS_OUTPUT          GET_LINES                      GET_LINES                      LINES

SYS        DBMS_OUTPUT          GET_LINES                      GET_LINES

13 rows selected.

SQL> create package pkg_wyq as

2    procedure sp_abc (p_arg1 number,p_arg2 varchar2);

3    function sp_efg return pls_integer;

4  end;

5  /

Package created.

SQL> select * from dba_proc_args where package_name = 'PKG_WYQ';

OWNER      PACKAGE_NAME         PROCEDURENAME                  PROCEDURE$                     ARGUMENT

---------- -------------------- ------------------------------ ------------------------------ ------------------------------

SYS        PKG_WYQ              SP_ABC                         SP_ABC                         P_ARG2

SYS        PKG_WYQ              SP_ABC                         SP_ABC                         P_ARG1

SYS        PKG_WYQ              SP_EFG                         SP_EFG

SQL>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值