我只知道oracle存储过程的名字,有没有办法从数据库中读存储过程的参数名称和类型Oracle存储

解决方案 »

  1.   

    SQL> desc user_arguments
    Name               Type          Nullable Default Comments                                                              
    ------------------ ------------- -------- ------- --------------------------------------------------------------------- 
    OBJECT_NAME        VARCHAR2(30)  Y                Procedure or function name                                            
    PACKAGE_NAME       VARCHAR2(30)  Y                Package name                                                          
    OBJECT_ID          NUMBER                         Object number of the object                                           
    OVERLOAD           VARCHAR2(40)  Y                Overload unique identifier                                            
    ARGUMENT_NAME      VARCHAR2(30)  Y                Argument name                                                         
    POSITION           NUMBER                         Position in argument list, or null for function return value          
    SEQUENCE           NUMBER                         Argument sequence, including all nesting levels                       
    DATA_LEVEL         NUMBER                         Nesting depth of argument for composite types                         
    DATA_TYPE          VARCHAR2(30)  Y                Datatype of the argument                                              
    DEFAULT_VALUE      LONG          Y                Default value for the argument                                        
    DEFAULT_LENGTH     NUMBER        Y                Length of default value for the argument                              
    IN_OUT             VARCHAR2(9)   Y                Argument direction (IN, OUT, or IN/OUT)                               
    DATA_LENGTH        NUMBER        Y                Length of the column in bytes                                         
    DATA_PRECISION     NUMBER        Y                Length: decimal digits (NUMBER) or binary digits (FLOAT)              
    DATA_SCALE         NUMBER        Y                Digits to right of decimal point in a number                          
    RADIX              NUMBER        Y                Argument radix for a number                                           
    CHARACTER_SET_NAME VARCHAR2(44)  Y                Character set name for the argument                                   
    TYPE_OWNER         VARCHAR2(30)  Y                Owner name for the argument type in case of object types              
    TYPE_NAME          VARCHAR2(30)  Y                Object name for the argument type in case of object types             
    TYPE_SUBNAME       VARCHAR2(30)  Y                Subordinate object name for the argument type in case of object types 
    TYPE_LINK          VARCHAR2(128) Y                Database link name for the argument type in case of object types      
    PLS_TYPE           VARCHAR2(30)  Y                PL/SQL type name for numeric arguments                                
    CHAR_LENGTH        NUMBER        Y                Character limit for string datatypes                                  
    CHAR_USED          VARCHAR2(1)   Y                Is the byte limit (B) or char limit (C) official for this string?   
      

  2.   

    select * from user_arguments where object_name = upper('过程名')
      

  3.   

    嗯,楼上正解,看user_arguments视图。