How to get list of all the procedure inside a package oracle

前端 未结 4 932
无人及你
无人及你 2020-12-10 00:41

Can I get the name of all the function inside a package. Suppose I have a package PKG_OWA and I want to list all the procedure inside the package.

4条回答
  •  时光取名叫无心
    2020-12-10 01:42

    The answer from APC is on the correct lines but the SQL given will only list the procedures owned by 'YOU' and is the same as selecting from USER_PROCEDURES but there could be packages in other schema

    SQL> select * from all_procedures where owner='TEST';
    
    OWNER                          OBJECT_NAME
    ------------------------------ ------------------------------
    PROCEDURE_NAME                 AGG PIP IMPLTYPEOWNER
    ------------------------------ --- --- ------------------------------
    IMPLTYPENAME                   PAR INT DET AUTHID
    ------------------------------ --- --- --- ------------
    TEST                           TEST
                                   NO  NO
                                   NO  NO  NO  DEFINER
    
    SQL> select * from user_procedures;
    
    OBJECT_NAME                    PROCEDURE_NAME                 AGG PIP
    ------------------------------ ------------------------------ --- ---
    IMPLTYPEOWNER                  IMPLTYPENAME                   PAR INT DET
     ------------------------------ ------------------------------ --- --- ---
    AUTHID
    ------------
    TEST                                                          NO  NO
                                                              NO  NO  NO
    

    Also note that when you grant and revoke execute on a package, procedure or function, these show up in the DBA_TAB_PRIVS table (same table as insert/update/delete privileges on tables)

    Once you avhe the name of a packages such as the Oracle supplied DBMS ones ,you can also use DESC which will provide a list of the parameters and types expected e.g.

    SQL> desc dbms_lob
    PROCEDURE APPEND
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     DEST_LOB                       BLOB                    IN/OUT
     SRC_LOB                        BLOB                    IN
    PROCEDURE APPEND
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     DEST_LOB                       CLOB                    IN/OUT
     SRC_LOB                        CLOB                    IN
    PROCEDURE CLOSE
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     LOB_LOC                        BLOB                    IN/OUT
    PROCEDURE CLOSE
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     LOB_LOC                        CLOB                    IN/OUT
    PROCEDURE CLOSE
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     FILE_LOC                       BINARY FILE LOB         IN/OUT
    FUNCTION COMPARE RETURNS NUMBER(38)
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     LOB_1                          BLOB                    IN
     LOB_2                          BLOB                    IN
     AMOUNT                         NUMBER(38)              IN     DEFAULT
     OFFSET_1                       NUMBER(38)              IN     DEFAULT
     OFFSET_2                       NUMBER(38)              IN     DEFAULT
    FUNCTION COMPARE RETURNS NUMBER(38)
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     LOB_1                          CLOB                    IN
     LOB_2                          CLOB                    IN
     AMOUNT                         NUMBER(38)              IN     DEFAULT
     OFFSET_1                       NUMBER(38)              IN     DEFAULT
     OFFSET_2                       NUMBER(38)              IN     DEFAULT
    FUNCTION COMPARE RETURNS NUMBER(38)
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     FILE_1                         BINARY FILE LOB         IN
     FILE_2                         BINARY FILE LOB         IN
     AMOUNT                         NUMBER(38)              IN
     OFFSET_1                       NUMBER(38)              IN     DEFAULT
     OFFSET_2                       NUMBER(38)              IN     DEFAULT
    PROCEDURE CONVERTTOBLOB
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     DEST_LOB                       BLOB                    IN/OUT
     SRC_CLOB                       CLOB                    IN
     AMOUNT                         NUMBER(38)              IN
     DEST_OFFSET                    NUMBER(38)              IN/OUT
     SRC_OFFSET                     NUMBER(38)              IN/OUT
     BLOB_CSID                      NUMBER                  IN
     LANG_CONTEXT                   NUMBER(38)              IN/OUT
     WARNING                        NUMBER(38)              OUT
    PROCEDURE CONVERTTOCLOB
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     DEST_LOB                       CLOB                    IN/OUT
     SRC_BLOB                       BLOB                    IN
     AMOUNT                         NUMBER(38)              IN
     DEST_OFFSET                    NUMBER(38)              IN/OUT
     SRC_OFFSET                     NUMBER(38)              IN/OUT
     BLOB_CSID                      NUMBER                  IN
     LANG_CONTEXT                   NUMBER(38)              IN/OUT
     WARNING                        NUMBER(38)              OUT
    PROCEDURE COPY
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     DEST_LOB                       BLOB                    IN/OUT
     SRC_LOB                        BLOB                    IN
     AMOUNT                         NUMBER(38)              IN
     DEST_OFFSET                    NUMBER(38)              IN     DEFAULT
     SRC_OFFSET                     NUMBER(38)              IN     DEFAULT
    PROCEDURE COPY
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     DEST_LOB                       CLOB                    IN/OUT
     SRC_LOB                        CLOB                    IN
     AMOUNT                         NUMBER(38)              IN
     DEST_OFFSET                    NUMBER(38)              IN     DEFAULT
     SRC_OFFSET                     NUMBER(38)              IN     DEFAULT
    PROCEDURE CREATETEMPORARY
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     LOB_LOC                        BLOB                    IN/OUT
     CACHE                          BOOLEAN                 IN
     DUR                            BINARY_INTEGER          IN     DEFAULT
    PROCEDURE CREATETEMPORARY
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     LOB_LOC                        CLOB                    IN/OUT
     CACHE                          BOOLEAN                 IN
     DUR                            BINARY_INTEGER          IN     DEFAULT
    PROCEDURE ERASE
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     LOB_LOC                        BLOB                    IN/OUT
     AMOUNT                         NUMBER(38)              IN/OUT
     OFFSET                         NUMBER(38)              IN     DEFAULT
    PROCEDURE ERASE
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     LOB_LOC                        CLOB                    IN/OUT
     AMOUNT                         NUMBER(38)              IN/OUT
     OFFSET                         NUMBER(38)              IN     DEFAULT
    PROCEDURE FILECLOSE
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     FILE_LOC                       BINARY FILE LOB         IN/OUT
    PROCEDURE FILECLOSEALL
    FUNCTION FILEEXISTS RETURNS NUMBER(38)
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     FILE_LOC                       BINARY FILE LOB         IN
    PROCEDURE FILEGETNAME
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     FILE_LOC                       BINARY FILE LOB         IN
     DIR_ALIAS                      VARCHAR2                OUT
     FILENAME                       VARCHAR2                OUT
    FUNCTION FILEISOPEN RETURNS NUMBER(38)
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     FILE_LOC                       BINARY FILE LOB         IN
    PROCEDURE FILEOPEN
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     FILE_LOC                       BINARY FILE LOB         IN/OUT
     OPEN_MODE                      BINARY_INTEGER          IN     DEFAULT
    PROCEDURE FREETEMPORARY
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     LOB_LOC                        BLOB                    IN/OUT
    PROCEDURE FREETEMPORARY
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     LOB_LOC                        CLOB                    IN/OUT
    FUNCTION GETCHUNKSIZE RETURNS NUMBER(38)
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     LOB_LOC                        BLOB                    IN
    FUNCTION GETCHUNKSIZE RETURNS NUMBER(38)
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     LOB_LOC                        CLOB                    IN
    FUNCTION GETLENGTH RETURNS NUMBER(38)
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     LOB_LOC                        BLOB                    IN
    FUNCTION GETLENGTH RETURNS NUMBER(38)
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     LOB_LOC                        CLOB                    IN
    FUNCTION GETLENGTH RETURNS NUMBER(38)
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     FILE_LOC                       BINARY FILE LOB         IN
    FUNCTION GET_STORAGE_LIMIT RETURNS NUMBER(38)
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     LOB_LOC                        CLOB                    IN
    FUNCTION GET_STORAGE_LIMIT RETURNS NUMBER(38)
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     LOB_LOC                        BLOB                    IN
    FUNCTION INSTR RETURNS NUMBER(38)
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     LOB_LOC                        BLOB                    IN
     PATTERN                        RAW                     IN
     OFFSET                         NUMBER(38)              IN     DEFAULT
     NTH                            NUMBER(38)              IN     DEFAULT
    FUNCTION INSTR RETURNS NUMBER(38)
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     LOB_LOC                        CLOB                    IN
     PATTERN                        VARCHAR2                IN
     OFFSET                         NUMBER(38)              IN     DEFAULT
     NTH                            NUMBER(38)              IN     DEFAULT
    FUNCTION INSTR RETURNS NUMBER(38)
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     FILE_LOC                       BINARY FILE LOB         IN
     PATTERN                        RAW                     IN
     OFFSET                         NUMBER(38)              IN     DEFAULT
     NTH                            NUMBER(38)              IN     DEFAULT
    FUNCTION ISOPEN RETURNS NUMBER(38)
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     LOB_LOC                        BLOB                    IN
    FUNCTION ISOPEN RETURNS NUMBER(38)
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     LOB_LOC                        CLOB                    IN
    FUNCTION ISOPEN RETURNS NUMBER(38)
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     FILE_LOC                       BINARY FILE LOB         IN
    FUNCTION ISTEMPORARY RETURNS NUMBER(38)
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     LOB_LOC                        BLOB                    IN
    FUNCTION ISTEMPORARY RETURNS NUMBER(38)
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     LOB_LOC                        CLOB                    IN
    PROCEDURE LOADBLOBFROMFILE
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     DEST_LOB                       BLOB                    IN/OUT
     SRC_BFILE                      BINARY FILE LOB         IN
     AMOUNT                         NUMBER(38)              IN
     DEST_OFFSET                    NUMBER(38)              IN/OUT
     SRC_OFFSET                     NUMBER(38)              IN/OUT
    PROCEDURE LOADCLOBFROMFILE
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     DEST_LOB                       CLOB                    IN/OUT
     SRC_BFILE                      BINARY FILE LOB         IN
     AMOUNT                         NUMBER(38)              IN
     DEST_OFFSET                    NUMBER(38)              IN/OUT
     SRC_OFFSET                     NUMBER(38)              IN/OUT
     BFILE_CSID                     NUMBER                  IN
     LANG_CONTEXT                   NUMBER(38)              IN/OUT
     WARNING                        NUMBER(38)              OUT
    PROCEDURE LOADFROMFILE
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     DEST_LOB                       BLOB                    IN/OUT
     SRC_LOB                        BINARY FILE LOB         IN
     AMOUNT                         NUMBER(38)              IN
     DEST_OFFSET                    NUMBER(38)              IN     DEFAULT
     SRC_OFFSET                     NUMBER(38)              IN     DEFAULT
    PROCEDURE LOADFROMFILE
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     DEST_LOB                       CLOB                    IN/OUT
     SRC_LOB                        BINARY FILE LOB         IN
     AMOUNT                         NUMBER(38)              IN
     DEST_OFFSET                    NUMBER(38)              IN     DEFAULT
     SRC_OFFSET                     NUMBER(38)              IN     DEFAULT
    PROCEDURE OPEN
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     LOB_LOC                        BLOB                    IN/OUT
     OPEN_MODE                      BINARY_INTEGER          IN
    PROCEDURE OPEN
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     LOB_LOC                        CLOB                    IN/OUT
     OPEN_MODE                      BINARY_INTEGER          IN
    PROCEDURE OPEN
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     FILE_LOC                       BINARY FILE LOB         IN/OUT
     OPEN_MODE                      BINARY_INTEGER          IN     DEFAULT
    PROCEDURE READ
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     LOB_LOC                        BLOB                    IN
     AMOUNT                         NUMBER(38)              IN/OUT
     OFFSET                         NUMBER(38)              IN
     BUFFER                         RAW                     OUT
    PROCEDURE READ
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     LOB_LOC                        CLOB                    IN
     AMOUNT                         NUMBER(38)              IN/OUT
     OFFSET                         NUMBER(38)              IN
     BUFFER                         VARCHAR2                OUT
    PROCEDURE READ
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     FILE_LOC                       BINARY FILE LOB         IN
     AMOUNT                         NUMBER(38)              IN/OUT
     OFFSET                         NUMBER(38)              IN
     BUFFER                         RAW                     OUT
    FUNCTION SUBSTR RETURNS RAW
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     LOB_LOC                        BLOB                    IN
     AMOUNT                         NUMBER(38)              IN     DEFAULT
     OFFSET                         NUMBER(38)              IN     DEFAULT
    FUNCTION SUBSTR RETURNS VARCHAR2
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     LOB_LOC                        CLOB                    IN
     AMOUNT                         NUMBER(38)              IN     DEFAULT
     OFFSET                         NUMBER(38)              IN     DEFAULT
    FUNCTION SUBSTR RETURNS RAW
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     FILE_LOC                       BINARY FILE LOB         IN
     AMOUNT                         NUMBER(38)              IN     DEFAULT
     OFFSET                         NUMBER(38)              IN     DEFAULT
    PROCEDURE TRIM
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     LOB_LOC                        BLOB                    IN/OUT
     NEWLEN                         NUMBER(38)              IN
    PROCEDURE TRIM
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     LOB_LOC                        CLOB                    IN/OUT
     NEWLEN                         NUMBER(38)              IN
    PROCEDURE WRITE
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     LOB_LOC                        BLOB                    IN/OUT
     AMOUNT                         NUMBER(38)              IN
     OFFSET                         NUMBER(38)              IN
     BUFFER                         RAW                     IN
    PROCEDURE WRITE
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     LOB_LOC                        CLOB                    IN/OUT
     AMOUNT                         NUMBER(38)              IN
     OFFSET                         NUMBER(38)              IN
     BUFFER                         VARCHAR2                IN
    PROCEDURE WRITEAPPEND
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     LOB_LOC                        BLOB                    IN/OUT
     AMOUNT                         NUMBER(38)              IN
     BUFFER                         RAW                     IN
    PROCEDURE WRITEAPPEND
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     LOB_LOC                        CLOB                    IN/OUT
     AMOUNT                         NUMBER(38)              IN
     BUFFER                         VARCHAR2                IN
    

提交回复
热议问题