Skip to content

适用虚谷数据库版本

v12.9



适用虚谷数据库版本

v12.9


包-SYS_PACKAGES

📄字数 1.2K
👁️阅读量 加载中...

功能描述

SYS_PACKAGES系统表用于存储、和管理系统库和用户库中所有创建的包信息。

字段说明

序号字段名类型说明V11V12
0DB_IDINTEGER库ID
1SCHEMA_IDINTEGER模式ID
2USER_IDINTEGER属主ID
3PACK_IDINTEGER包ID
4PACK_NAMEVARCHAR包名
5LANGUAGECHAR语言
6SPECCLOB包头定义
7BODYCLOB包体定义
8CREATE_TIMEDATETIME创建时间
9VALIDBOOLEAN是否有效
10ALL_OKBOOLEAN是否所有成员都有效
11COMMENTSVARCHAR注释信息
12IS_SYSBOOLEAN是否系统内建
13RESERVED1VARCHAR保留字段
14RESERVED2VARCHAR保留字段
15RESERVED3VARCHAR保留字段

应用举例

  • 查询系统包的相关信息
sql
-- spec与body为clob字段,需用to_char查询
SQL> SELECT pack_id, pack_name, TO_CHAR(spec) spec, TO_CHAR(body) body, valid, is_sys FROM SYS_PACKAGES WHERE pack_name='DBMS_OUTPUT';
+---------+-------------+-------------------------------------------------------------+----------------------------------------------------+-------+--------+
| PACK_ID |  PACK_NAME  |                            SPEC                             |                        BODY                        | VALID | IS_SYS |
+---------+-------------+-------------------------------------------------------------+----------------------------------------------------+-------+--------+
| 8193    | DBMS_OUTPUT |                                                            +|                                                   +| T     | T      |
|         |             |                                                            +| ----包体                                          +|       |        |
|         |             | /***********创建DBMS_OUTPUT包*****************************/+| CREATE OR REPLACE PACKAGE BODY SYSDBA.DBMS_OUTPUT +|       |        |
|         |             | CREATE OR REPLACE PACKAGE SYSDBA.DBMS_OUTPUT               +| IS                                                +|       |        |
|         |             | IS                                                         +|                                                   +|       |        |
|         |             |         PROCEDURE PUT_LINE(str VARCHAR);                   +|         PROCEDURE PUT_LINE(str VARCHAR)           +|       |        |
|         |             | END SYSDBA.DBMS_OUTPUT;                                     |         IS                                        +|       |        |
|         |             |                                                             |         BEGIN                                     +|       |        |
|         |             |                                                             |                 send_msg(str);                    +|       |        |
|         |             |                                                             |         END;                                      +|       |        |
|         |             |                                                             |                                                   +|       |        |
|         |             |                                                             | END SYSDBA.DBMS_OUTPUT;                            |       |        |
+---------+-------------+-------------------------------------------------------------+----------------------------------------------------+-------+--------+
  • 查询自定义包的相关信息
sql
SQL> CREATE PACKAGE pack_info IS
     PROCEDURE put_line(msg VARCHAR);
     END;

SQL> CREATE PACKAGE BODY pack_info IS
     PROCEDURE put_line(msg VARCHAR) IS
     BEGIN
     SEND_MSG(msg);
     END;
     END;

SQL> SELECT pack_id, pack_name, TO_CHAR(spec) spec, TO_CHAR(body) body, valid, is_sys FROM SYS_PACKAGES WHERE pack_name='PACK_INFO';
+---------+-----------+----------------------------------+------------------------------------+-------+--------+
| PACK_ID | PACK_NAME |               SPEC               |                BODY                | VALID | IS_SYS |
+---------+-----------+----------------------------------+------------------------------------+-------+--------+
| 8211    | PACK_INFO | CREATE PACKAGE pack_info IS     +| CREATE PACKAGE BODY pack_info IS  +| T     | F      |
|         |           | PROCEDURE put_line(msg VARCHAR);+| PROCEDURE put_line(msg VARCHAR) IS+|       |        |
|         |           | END;                             | BEGIN                             +|       |        |
|         |           |                                  | SEND_MSG(msg);                    +|       |        |
|         |           |                                  | END;                              +|       |        |
|         |           |                                  | END;                               |       |        |
+---------+-----------+----------------------------------+------------------------------------+-------+--------+

相关系统表