【笔记】Oracle常用包

374 阅读1分钟
  • DBMS_OUTPUT:方便从存储过程、函数、触发器发送信息,尤其是在调试程序的时候。
--输出文本信息
EXEC DBMS_OUTPUT.PUT_LINE('Hello world.');
  • DBMS_STATS:对象统计信息收集。
--收集表统计信息
EXEC DBMS_STATS.GATHER_TABLE_STATS('TABLESPACE', 'TABLE',CASCADE=>TRUE);
  • DBMS_XPLAN:显示SQL执行计划。
--生成语句执行计划
EXPLAIN PLAN FOR
SELECT USER_NAME, REMARK
  FROM EMPLOYEES
 WHERE USER_ID = 1000;
--查看语句执行计划
SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY());
  • DBMS_RANDOM:随机数生成工具包。
SELECT TRUNC(DBMS_RANDOM.VALUE(0, 1000)),
       DBMS_RANDOM.STRING('x', 10)
  FROM DUAL;
  • DBMS_SCHEDULER:查看或修改数据库定时作业。
  • DBMS_METADATA:获取数据库字典元数据信息。
--查看表结构
SELECT DBMS_METADATA.GET_DDL('TABLE', 'ORDER', 'M')
  FROM DUAL;
  • UTL_FILE:提供接口访问操作系统文件。
  • DBMS_ROWID:查看记录所在数据块、数据文件等信息。
--查看记录所在的数据文件及数据块地址
SELECT DBMS_ROWID.ROWID_RELATIVE_FNO(ROWIND) F#,
       DBMS_ROWID.ROWID_BLOCK_NUMBER(ROWID) B#
  FROM ORDER
 WHERE ORDER_ID = '111';
  • DBMS_UTILITY:工具小程序。如:取当前CPU时间、数据文件号、数据块号等。
  • DBMS_REDEFINITION:表结构在线重定义等。
  • DBMS_LOGMNR:提供日志挖掘功能。