最近在看oracle,对这个不是很了解
在oracle中能不能像sql那样,得到一个存储过程的所有参数信息(包括:参数名,参数类型)
在sql中是这样实现的
select parameter_mode,parameter_name,data_type from information_schema.parameters where specific_name='存储过程名' order by ordinal_position

解决方案 »

  1.   

    在oracle中用以下语句可以查询存储过程的所有内容(包括:参数名,参数类型)
    select * from user_source 
    where name='存储过程名' 
      

  2.   

    我想看一下查询结果,我这里没有oracle数据库
    你能贴一个查询结果出来我看一下吗?
      

  3.   

    象下面的表格(没有全部列在下面,应该是全部):
            NAME    TYPE          LINE       TEXT
    -------------------------------------------------------------------------------------------------------------
    1 test PROCEDURE 1 "PROCEDURE test("
    2 test PROCEDURE 2 "  /***************************************************************"
    3 test PROCEDURE 3 "  *名    称:  test"
    4 test PROCEDURE 4 "  *功能描述: "
    5 test PROCEDURE 5 "  *编 写 人: "
    6 test PROCEDURE 6 "  *编写日期: 2005-07-23"
    7 test PROCEDURE 7 "  ****************************************************************/"
    8 test PROCEDURE 8 "    v_ksrq     VARCHAR ,    --起始日期"
    9 test PROCEDURE 9 "    v_zzrq     VARCHAR ,    --终止日期"
    10 test PROCEDURE 10 "    c_CurSor OUT cc_CURSOR  --光标结果"
    11 test PROCEDURE 11 "    )"
    12 test PROCEDURE 12 "  IS"
    13 test PROCEDURE 13 "    BEGIN"
    14 test PROCEDURE 14 "         OPEN c_CurSor FOR"
    15 test PROCEDURE 15 "       select .......
      

  4.   

    你要的是这个把,只包含名称和参数类型
    SELECT * FROM USER_ARGUMENTS WHERE OBJECT_NAME ='存储过程名'
      

  5.   

    啊  查询出来怎么是这样的哦
    能不能得到像sql这样的效果
    parameter_name     data_type      parameter_mode 
    ---------------------------------------------------
    @job_id            int            IN
      

  6.   

    <HTML>
    <HEAD>
    <TITLE>PL/SQL Developer Export</TITLE>
    </HEAD>
    <BODY>
    <TABLE BORDER="1">
    <TR><TH>OBJECT_NAME</TH><TH>PACKAGE_NAME</TH><TH>ARGUMENT_NAME</TH><TH>DATA_TYPE</TH><TH>IN_OUT</TH></TR>
    <TR><TD>GET_*</TD><TD>UG_*</TD><TD>V_FEE_TYPE</TD><TD>VARCHAR2</TD><TD>IN</TD></TR>
    <TR><TD>GET_*</TD><TD>UG_*</TD><TD>V_CUST_TYPE</TD><TD>VARCHAR2</TD><TD>IN</TD></TR>
    <TR><TD>GET_*</TD><TD>UG_*</TD><TD>&nbsp;</TD><TD>VARCHAR2</TD><TD>OUT</TD></TR>
    </TABLE>
    </BODY>
    </HTML>
      

  7.   

    object_name package_name argument_name data_type in_out
    GET_* UG_* V_FEE_TYPE VARCHAR2 IN
    GET_* UG_* V_CUST_TYPE VARCHAR2 IN
    GET_* UG_* VARCHAR2 OUT
      

  8.   

    用PL/SQL Developer可视窗口倒是可以看到。