考试网 >> IT认证 >> Oracle >> Oracle指导 >> 如何自动获取Oracle数据库启动时在Shared pool里面的对象

如何自动获取Oracle数据库启动时在Shared pool里面的对象

发布时间:2006-06-28 09:52     点击:
分页:[1] 2 3 4 5  下一页

      1.创建一个供Triger调用的Procedure

  

  a.创建一个用来保存Procedure和Package的名称的Table(list_tab)

  

  SQL>create table sys.list_tab (owner varchar2(64),NAME VARCHAR2(100));

  

  Table created.

  

  b.创建一个Procedure(proc_pkgs_list)来保存Shared Pool里面的对象名

  

  SQL> create or replace PROCEDURE proc_pkgs_list AS

  

  2     own varchar2(64);

  

  3     nam varchar2(100);

  

  4   cursor pkgs is

  

  5     select owner,name

  

  6     from SYS.v_$db_object_cache

  

  7     where type in (’PACKAGE’,’PROCEDURE’)

  

  8     and  (loads > 1 or KEPT=’YES’);

  

  9 BEGIN

  

  10    delete from sys.list_tab;

  

  11    commit;

  

  12     open pkgs;

  

  13     loop

  

  14     fetch pkgs into own, nam;

  

  15     exit when pkgs%notfound;

  

  16    insert into sys.list_tab values (own , nam);

  

  17  commit;

  

  18  end loop;

  

  19       end;

  

  20       /

  
分页:[1] 2 3 4 5  下一页
版权申明:未经书面授权请勿转载本站信息!!作品版权归所属媒体与作者所有!!
发表评论: 匿名发表 用户名: 查看评论
您将承担一切因您的行为、言论而直接或间接导致的民事或刑事法律责任
留言板管理人员有权保留或删除其管辖留言中的任意内容
本站提醒:不要进行人身攻击。谢谢配合。
在本站搜索相关信息
2003-2005 Ksw123.com All Rights Reserved. - TOP
Copyright © 2006 Ksw123.com. All rights reserved.中国考题网 版权所有