`
sinianxue
  • 浏览: 17832 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

自动编译失效存储过程

阅读更多
CREATE OR REPLACE PROCEDURE PRC_COMPILE_INVALID
IS
  --/************************************************************************************
  -- 程序名称:    PRC_COMPILE_INVALID
  -- 功能描述:    每天编译失效的存储过程和失效的索引

  v_sql       VARCHAR2(10000) DEFAULT ''; -- 动态SQL变量,注意SQL长度
  v_prc       VARCHAR2(40);
  v_date      VARCHAR2(8);
  v_stepnum   NUMBER          DEFAULT 0;           -- 运行步骤
  v_errmsg    VARCHAR2(1024)  DEFAULT '正常';
BEGIN
  v_prc:='PRC_COMPILE_INVALID';
  SELECT to_char(SYSDATE,'yyyymmdd') INTO v_date FROM  dual;
  --正文SQL处理
  --循环将无效存储过程取出 对其进行编译
  v_stepnum :=v_stepnum+1;
       For x In (Select Object_Name From user_objects Where Status = 'INVALID' And Object_Type = 'PROCEDURE') Loop
        v_sql := 'Alter Procedure ' || x.Object_Name || ' COMPILE';
        Begin
             EXECUTE IMMEDIATE v_sql;
        PRC_LOG_WRT(v_date,v_prc,v_stepnum,v_sql,v_errmsg,SQL%ROWCOUNT);
        COMMIT;
        End;
       End Loop;       
       
      --将无效索引取出  对其进行编译
     v_stepnum :=v_stepnum+1;
       FOR y In (SELECT  t.index_name from  all_indexes t WHERE t.owner='DBCHNADM' AND t.status='UNUSABLE') Loop
        v_sql := 'ALTER INDEX '||y.index_name ||' rebuild ';
        Begin
             EXECUTE IMMEDIATE v_sql;
        PRC_LOG_WRT(v_date,v_prc,v_stepnum,v_sql,v_errmsg,SQL%ROWCOUNT);
        COMMIT;
        End;
       End Loop;    
     
     -- 存储过程错误信息记录
  EXCEPTION
  WHEN OTHERS THEN

    v_errmsg := v_stepnum || '步出错:' || SQLERRM;
    PRC_LOG_WRT(v_date,v_prc,v_stepnum,v_sql,v_errmsg,-1);
    COMMIT;

END;
分享到:
评论

相关推荐

    oracle 视图,函数,过程,触发器自动编译脚本

    ### Oracle视图、函数、过程、触发器自动编译脚本知识点详解 #### 一、背景与需求 在日常管理维护Oracle数据库服务器的过程中,我们经常会遇到需要修改视图(View)、表(Table)结构的情况。由于Oracle中的视图、...

    Eclipse无法自动编译出class文件.jpg

    在使用Eclipse这一强大的Java开发工具时,可能会遇到一些问题,比如标题中提到的"Eclipse无法自动编译出class文件"。这个问题对于开发者来说是非常困扰的,因为这直接影响到代码的实时测试和调试。让我们深入探讨...

    关于更新字段,存储过程,函数等数据库对象的规定与说明

    在更新过程函数视图同样会造成引用其的过程函数视图失效,通常情况下,当功能调用失效的过程函数会自动编译,但是正在运行的过程函数,是不能编译成功的,所以大量的并发用户访问数据库时,会因为一些过程函数的失效而...

    清除sqlserver无效的视图及存储过程

    而存储过程则是一组预编译的SQL语句,可以接收参数,执行复杂的业务逻辑,并返回结果。它们在数据库设计中起到提高性能、封装复杂操作和提供安全性的关键作用。 当视图或存储过程出现错误,如依赖的表或列已不存在...

    Oracle无效的数据库对象

    Oracle 总是会尝试自动重编译无效的 PL/SQL 对象和视图,但是可能不会成功。下面将详细介绍如何标识和修正无效的数据库对象。 标识无效的对象 ----------------- 为了标识数据库中的所有无效的对象,我们可以作为...

    一种PL_SQL程序包失效的解决方案.pdf

    在这种情况下,文章建议逐步实施代码改造,并在改造的过程中密切监控错误的发生,定期检测失效的程序包,并通过失败检测机制自动进行重新编译处理。这样可以在不影响系统稳定性的情况下,逐渐提高程序包的健壮性和...

    【技术】检查该重新编译的索引

    然而,随着数据的增删改,原有的索引可能会变得效率低下,甚至失效,这就需要我们定期检查并可能重新编译索引。 在标题提及的“检查该重新编译的索引”过程中,我们主要关注以下几个方面: 1. **索引碎片**:当...

    session、viewstate jQuery SQL存储过程等一系列教学网站 相当实用哦

    SQL存储过程是一种预先编译好的SQL代码块,存储在数据库中供外部程序调用。它可以包含复杂的逻辑控制语句和数据库操作,提高应用程序的性能和安全性。 #### 二、SQL存储过程的优点 1. **性能**:减少网络流量,提高...

    WinForm程序创建证书、签名、安装、发布、自动更新全过程及pvkimprt.exe

    开发者需要确保更新过程安全无误,不会破坏现有数据或导致功能失效。 6. **文档参考**:提供的两个文档“WinForm程序创建证书、签名、安装、发布、自动更新全过程.docx”和“WinForm应用程序发布_安装_更新记录....

    变量的存储方式

    但实际是否能存储在寄存器取决于编译器和可用资源,如果无法满足,编译器会自动降级为自动变量存储。 3. 全局变量: - 没有`static`修饰的全局变量在整个程序运行期间都存在,且在整个源文件或所有文件(如果未...

    百度的自动完成效果,抠出来修改的

    描述中提到的问题是在实现过程中遇到了一个具体的bug,即使用笔记本的触摸板进行粘贴操作时,自定义的自动完成功能无法正常触发。这可能是因为在重新编写代码时,没有正确处理触摸板的粘贴事件。在JavaScript编程中...

    brush_brush_自动雨刷_雨刷器_雨量_

    在项目开发过程中,`.classpath` 和 `.project` 文件是Java开发环境配置文件,它们定义了项目的构建路径和编译规则;`bin` 目录存放编译后的类文件;`.settings` 文件夹包含项目的特定配置信息;`src` 目录存储源...

    根据说话人自动停止录音的arecord工具和代码

    这可以有效地减少不必要的静音片段,节省存储空间,并提高后续处理的效率。 本篇将详细介绍如何利用`arecord`和VAD技术在Linux上创建一个根据说话人自动停止录音的解决方案。首先,我们需要了解`arecord`的基本用法...

    3d资源已失效-无下载

    然而,"3d资源已失效-无下载"的标题暗示了可能存在一个问题,即用户尝试访问或下载的3D资源已经不再可用,这可能是由于链接过期、源文件被移除或者服务器问题导致的。 `.editorconfig` 是一个跨平台的配置文件,它...

    城市轨道交通信号控制系统软件安全完整性自动化测试方法研究.pdf

    具体地,情景库负责存储和维护不同的检测情景和智能化脚本,为回归测试过程创造便利条件。仿真引擎负责将智能化检测脚本进行原始化处理,并驱动各个子系统按照预定的模拟时钟运行。软件层次集成主机则基于操作系统的...

    基于get-tengine-upstream,自动发现的数据采集工具。.zip

    6. **日志与数据存储**:收集运行过程中的日志和数据,保存为数据集,方便后续分析和优化。 Go语言的特性使得这个工具能够高效、稳定地运行在各种环境中。同时,由于Go语言支持并发处理,所以这个工具很可能具备...

    有关PLC自动化电气控制应用的研究.pdf

    它通过程序存储在可编程的存储器中,实现定时逻辑运算、顺序控制等功能。PLC技术由于其在抗干扰能力、维护和改造便捷性、实用性等方面的优势,已广泛应用于工业生产的设备自动化控制中。 1. PLC技术的优势 1.1 抗...

    Sybase ASE 12.5 Adaptive Server Enterprise中的Java.pdf

    - **创建Java存储过程**:首先需要编写Java类并编译成.class文件,然后通过SQL语句将这些文件加载到数据库中,最后定义存储过程的输入输出参数。 - **调用Java存储过程**:与传统的T-SQL存储过程类似,只需要使用...

    5分钟掌握Mysql索引使用和失效.zip

    6. **动态SQL或参数化查询**:在动态SQL语句中,数据库无法在编译时预知实际的查询条件,可能无法利用索引。 7. **数据量小**:对于非常小的表,创建索引可能反而增加不必要的开销。 了解这些知识点后,你可以根据...

Global site tag (gtag.js) - Google Analytics