开发时,一般都是使用PL/SQL工具进行开发,查看编译错误及重新编译都很简单,但是一般的生产环境是不允许连接外界工具的,只能在命令行中进行重新编译及查看,今天我就遇到了这个问题,现在总结如下:

1、获取数据库中的无效对象:

  set linesize 180;
col owner format a10
col object_name format a45
col object_type format a20
col status format a20
SELECT owner, object_name, object_type, status
FROM dba_objects
WHERE status = 'INVALID'; OWNER OBJECT_NAME OBJECT_TYPE STATUS
---------- --------------------------------------------- -------------------- ------------------
YLPROD DMPAC_ENDOR PACKAGE BODY INVALID

2、编译无效对象

 SQL> alter package ylprod.dmpac_endor compile package;

 警告: 更改的包带有编译错误。

这是重新编译包体,package是重新编译包体和包规范。

SQL> alter package ylprod.dmpac_endor compile package;

3.捕获编译错误

 SQL> show errors;
PACKAGE YLPROD.DMPAC_ENDOR 出现错误: LINE/COL ERROR
-------- -----------------------------------------------------------------
21/3 PL/SQL: Declaration ignored
23/54 PLS-00302: 必须声明 'ENDORNO' 组件
27/3 PL/SQL: Declaration ignored
29/59 PLS-00302: 必须声明 'ENDORNO' 组件

或者

SQL> show errors package  ylprod.DMPAC_ENDOR
PACKAGE YLPROD.DMPAC_ENDOR 出现错误: LINE/COL ERROR
-------- -----------------------------------------------------------------
21/3 PL/SQL: Declaration ignored
23/54 PLS-00302: 必须声明 'ENDORNO' 组件
27/3 PL/SQL: Declaration ignored
29/59 PLS-00302: 必须声明 'ENDORNO' 组件

如果使用show errors无法查询到错误,直接查询视图dba_errors

SQL> select owner,name,TEXT from dba_errors where owner='YLPROD' and name='DMPAC_ENDOR';

OWNER       NAME
---------- ------------------------------------------------------------------------------------------
TEXT
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
YLPROD DMPAC_ENDOR
PLS-00302: 必须声明 'ENDORNO' 组件 YLPROD DMPAC_ENDOR
PL/SQL: Declaration ignored

查看package编译时的错误信息及重新编译的更多相关文章

  1. 查看PL/SQL编译时的错误信息

    编译无效对象是DBA与数据库开发人员常见的工作之一.对于编译过程中的错误该如何去捕获,下面给出两种捕获错误的方法. 一.当前数据库版本信息及无效对象 1.查看当前数据库版本 [sql] view pl ...

  2. 【转】正确理解PHP程序编译时的错误信息

    我们编写程序时,无论怎样小心谨慎,犯错总是在所难免的.这些错误通常会迷惑PHP编译器.如果开发人员无法了解编译器报错信息的含义,那么这些错误信息不仅毫无用处,还会常常让人感到沮丧. 编译PHP脚本时, ...

  3. 解决SVN Cleanup时遇到错误信息:Cleanup failed to process the following paths:xxxxxxx Previous operation has not finished: run 'cleanup' if it was interrupted Please execute the 'Cleanup' command.

    解决SVN Cleanup时遇到错误信息:Cleanup failed to process the following paths:xxxxxxx Previous operation has no ...

  4. 【java】泛型的作用是在编译阶段防止错误输入,绕过编译就绕过泛型,可用反射验证

    package com.tn.collect; import java.lang.reflect.Method; import java.util.ArrayList; public class Fa ...

  5. 在Linux下安装PHP过程中,编译时出现错误的解决办法

    在Linux下安装PHP过程中,编译时出现configure: error: libjpeg.(a|so) not found 错误的解决办法 configure: error: libjpeg.(a ...

  6. [开源类库/项目] android保存崩溃时的错误信息log至本地【源码+jar包+使用说...

    不知大家是否经常遇到这种情况:自己的项目有时会在没有连接到电脑时发生崩溃,好不容易发现的bug结果连接到电脑时又复现不出来了:又或者自己写的一个功能在开机启动时产生小bug导致崩溃,而刚启动的机器想让 ...

  7. Laravel在进行表单验证时,错误信息未返回

    马上要毕业了,找了现在的这家公司,压力不大,自己也比较喜欢,唯一的遗憾就是手机号莫得换了(找不到换的借口). 进入正题: 之前自己的博客(http://lxiaoke.cn)是用ThinkPHP开发的 ...

  8. maven编译时GBK错误

    一.问题描述 今天在MyEclipse中使用Maven编译项目源代码时,结果如下了如下的错误 百思不得其解啊,Java源代码在MyEclipse中显示是没有任何错误的,可是执行"maven ...

  9. 应对 Visual Stdio 编译时出现错误:常量中有换行符

    笔者最近用 Visual Stdio 时,发现一个问题,在某一次写完语言进行编绎运行时,出现了以下错误: C2001错误:变量中有换行符 C2413错误:语法错误 缺少")"(在& ...

随机推荐

  1. aspnet excel导入导出SQLserver

    http://my.csdn.net/libin690145955/code/detail/452 http://blog.csdn.net/ltoper/article/details/532980 ...

  2. include<stdio.h> 和include<iostream.h>的区别

    stdio 是C标准库里面的函数库 对应的基本都是标准输入输出等等C语言常用库的定义iostream是C++标准库的头定义, 对应的基本上是C++的输入输出相关库定义开发C程序用Stdio, C++用 ...

  3. Help Me with the Game 分类: POJ 2015-06-29 16:34 17人阅读 评论(0) 收藏

    Help Me with the Game Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 3706   Accepted: ...

  4. HDU(2255),KM算法,最大权匹配

    题目链接 奔小康赚大钱 Time Limit: 1000/1000MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Su ...

  5. Android JUnit Test——批量运行测试代码

    转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/ Android测试三要素 写Android测试用例有三要素,一是我们用的“安卓模拟器device” ...

  6. fullPage.js

    https://github.com/alvarotrigo/fullPage.js  下载地址 demo:http://pan.baidu.com/s/1o8QWCmm 演示:http://full ...

  7. 2016 Al-Baath University Training Camp Contest-1 E

    Description ACM-SCPC-2017 is approaching every university is trying to do its best in order to be th ...

  8. 2016 Al-Baath University Training Camp Contest-1 C

    Description Rami went back from school and he had an easy homework about bitwise operations (and,or, ...

  9. apache commons Java包简介

    更多信息,请参考:http://commons.apache.org/ 一.Commons BeanUtils说明:针对Bean的一个工具集.由于Bean往往是有一堆get和set组成,所以BeanU ...

  10. 在VS中编译C++静态库以及使用的方法

    1.编译静态库 // add.h #pragma once class Add { public: Add(void); ~Add(void); int add(int a,int b); }; #i ...