在线精品99_中国九九盗摄偷拍偷看_91免费版在线观看_91.app_91高清视频在线_99热最新网站

数据库中失效对象编译的方法教程

147次阅读
没有评论

共计 3517 个字符,预计需要花费 9 分钟才能阅读完成。

本篇内容介绍了“数据库中失效对象编译的方法教程”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让丸趣 TV 小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

--------------------------------------------------------
-- DDL for Table RECOMPILE_LOG
--------------------------------------------------------
 CREATE TABLE  RECOMPILE_LOG  
 (  RDATE  DATE, 
  ERRMSG  VARCHAR2(200 BYTE)
 ) ;
--------------------------------------------------------
-- DDL for Table RECOMPILE_TYPE_INFO
--------------------------------------------------------
 CREATE TABLE  RECOMPILE_TYPE_INFO  
 (  TYPE  VARCHAR2(30 BYTE), 
  PROCESS_MODE  VARCHAR2(30 BYTE), 
  BASE_TABLE  VARCHAR2(30 BYTE)
 ) ;
Insert into EODA.RECOMPILE_TYPE_INFO (TYPE,PROCESS_MODE,BASE_TABLE) values ( TRIGGER , COMPILE , DBA_DEPENDENCIES 
Insert into EODA.RECOMPILE_TYPE_INFO (TYPE,PROCESS_MODE,BASE_TABLE) values ( PROCEDURE , COMPILE , DBA_DEPENDENCIES 
Insert into EODA.RECOMPILE_TYPE_INFO (TYPE,PROCESS_MODE,BASE_TABLE) values ( FUNCTION , COMPILE , DBA_DEPENDENCIES 
Insert into EODA.RECOMPILE_TYPE_INFO (TYPE,PROCESS_MODE,BASE_TABLE) values ( PACKAGE , COMPILE , DBA_DEPENDENCIES 
Insert into EODA.RECOMPILE_TYPE_INFO (TYPE,PROCESS_MODE,BASE_TABLE) values ( TYPE , COMPILE , DBA_DEPENDENCIES 
Insert into EODA.RECOMPILE_TYPE_INFO (TYPE,PROCESS_MODE,BASE_TABLE) values ( INDEX , REBUILD ONLINE , DBA_INDEXES 
--------------------------------------------------------
-- DDL for Procedure RECOMPILE_OBJECTS
--------------------------------------------------------
set define off;
 CREATE OR REPLACE EDITIONABLE PROCEDURE  RECOMPILE_OBJECTS  (RIO_OWNER VARCHAR2,
 RIO_OBJECT_NAME VARCHAR2) AS
 COMPILE_SQL VARCHAR2(500);
 P_OWNER VARCHAR2(30) := UPPER(RIO_OWNER);
 P_OBJECT_NAME VARCHAR2(30) := UPPER(RIO_OBJECT_NAME);
BEGIN
 FOR RIO_TYPE IN (SELECT TYPE, PROCESS_MODE, BASE_TABLE
 FROM RECOMPILE_TYPE_INFO) LOOP
 IF RIO_TYPE.BASE_TABLE =  DBA_DEPENDENCIES  THEN
 FOR DBA_DEP IN (SELECT OWNER, NAME
 FROM DBA_DEPENDENCIES
 WHERE TYPE = RIO_TYPE.TYPE
 AND REFERENCED_OWNER = P_OWNER
 AND REFERENCED_NAME = P_OBJECT_NAME) LOOP
 FOR DBA_OBJ IN (SELECT STATUS
 FROM DBA_OBJECTS
 WHERE OWNER = DBA_DEP.OWNER
 AND OBJECT_NAME = DBA_DEP.NAME) LOOP
 IF DBA_OBJ.STATUS =  INVALID  THEN
 BEGIN
 COMPILE_SQL :=  ALTER   || RIO_TYPE.TYPE ||     ||
 DBA_DEP.OWNER ||  .  || DBA_DEP.NAME ||     ||
 RIO_TYPE.PROCESS_MODE;
 EXECUTE immediate COMPILE_SQL;
 EXCEPTION
 WHEN OTHERS THEN
 INSERT INTO recompile_log
 (rdate, errmsg)
 VALUES
 (sysdate, COMPILE_SQL);
 END;
 END IF;
 END LOOP;
 END LOOP;
 END IF;
 IF RIO_TYPE.BASE_TABLE =  DBA_INDEXES  THEN
 FOR DBA_IND IN (SELECT OWNER, INDEX_NAME, PARTITIONED, STATUS
 FROM DBA_INDEXES
 WHERE TABLE_OWNER = P_OWNER
 AND TABLE_NAME = P_OBJECT_NAME) LOOP
 IF DBA_IND.PARTITIONED =  NO  AND DBA_IND.STATUS =  INVALID  THEN
 BEGIN
 COMPILE_SQL :=  ALTER   || RIO_TYPE.TYPE ||     ||
 DBA_IND.OWNER ||  .  || DBA_IND.INDEX_NAME ||     ||
 RIO_TYPE.PROCESS_MODE;
 EXECUTE immediate COMPILE_SQL;
 EXCEPTION
 WHEN OTHERS THEN
 INSERT INTO recompile_log
 (rdate, errmsg)
 VALUES
 (sysdate, COMPILE_SQL);
 END;
 END IF;
 IF DBA_IND.PARTITIONED =  YES  THEN
 FOR IND_PAR IN (SELECT PARTITION_NAME, STATUS
 FROM DBA_IND_PARTITIONS
 WHERE INDEX_OWNER = DBA_IND.OWNER
 AND INDEX_NAME = DBA_IND.INDEX_NAME) LOOP
 IF IND_PAR.STATUS =  UNUSABLE  THEN
 BEGIN
 COMPILE_SQL :=  ALTER   || RIO_TYPE.TYPE ||     ||
 DBA_IND.OWNER ||  .  || DBA_IND.INDEX_NAME ||
   PARTITION   || IND_PAR.PARTITION_NAME ||
   ONLINE 
 EXECUTE immediate COMPILE_SQL;
 EXCEPTION
 WHEN OTHERS THEN
 INSERT INTO recompile_log
 (rdate, errmsg)
 VALUES
 (sysdate, COMPILE_SQL);
 END;
 END IF;
 END LOOP;
 END IF;
 END LOOP;
 END IF;
 END LOOP;
/

“数据库中失效对象编译的方法教程”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注丸趣 TV 网站,丸趣 TV 小编将为大家输出更多高质量的实用文章!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-20发表,共计3517字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)
主站蜘蛛池模板: 日产精品一区二区 | 韩国三级中文字幕hd爽爽 | 国产亚洲精品久久久久久久网站 | 国产成人精品福利网站在线 | 很黄的孕妇a级黄毛片 | 亚洲av无码专区亚洲av伊甸园 | 日韩精品中文字幕无码一区 | 国产肥白大熟妇bbbb | 神马福利视频 | 网站黄色在线观看 | 久久久亚洲欧洲日产国码aⅴ | 久操网站| 色女人久久 | 国内精品久久久久久久久久久久 | 国产精品久久久久蜜臀 | 久久天堂综合亚洲伊人hd妓女 | 手机免费毛片 | 华人少妇被黑人粗大的猛烈进 | 国产 字幕 制服 中文 在线 | 97人人添人澡人人爽超碰 | 毛片毛| 国产一级毛片一区二区三区 | 拔插拔插永久免费 | 一本无码人妻在中文字幕免费 | 人人妻人人插视频 | 久久精品中文字幕无码绿巨人 | 小明台湾www永久视频 | 成人国产第一区在线观看 | 国产av巨作丝袜秘书 | 成人久久18网站 | 亚洲一区二区三区免费看 | 精品国偷自产在线视频99 | 另类图片亚洲色图 | 亚洲综合成人网在线观看 | 中国午夜伦理片伦理片 | 中文字幕日韩一区二区三区不卡 | 久草热在线观看 | 久久精品国产亚洲av无码偷窥 | 亚洲精品字幕 | 青青久精品观看视频最新 | 自拍偷拍免费 |