文件名称:跟踪运行时间错误-tcl语言及xcore工具学习
文件大小:3.97MB
文件格式:PDF
更新时间:2024-06-27 14:07:35
EBS R11 R12
4.5 跟踪运行时间错误 无论何时你的程序单元引起了运行时间错误, PL/SQL Developer 都将问你是否希望 查看错误堆栈的源。这个方法能使你快速查找错误的原因。如果在我们的 deptname 函数里有一个错误,则错误堆栈窗口将显示如下: 在顶部你能看到每个与运行时间错误相关的程序单元的标签,程序单元按从右往左的 顺序被调用。你可以通过标签来浏览,能容易地找到导致错误的程序流。在这里它显 示出测试脚本已经调用了函数 employee.deptname 。这显然能获得更多复杂的、甚 至通过触发器的信息。 注:如果你使用的是 Oracle 服务器 7.2 或者更早版本,触发器源将不被显示在错 误堆栈窗口里。 错误堆栈高亮显示每一与错误相关的红色的行。对于堆栈里的 近的程序单元,这是 一个引起错误的行。对于所有其它的程序单元,这是一个调用下一个程序单元完成的 行。 4.6 包声明和 Java 会话声明 当你正在编辑、编译、测试包时,包声明在每一个编译后将被 Oracle 抛弃,所有包 里的全局变量都将被复位,并且初始化块将被再运行一次。这可能导致意外的结果。 无论 PL/SQL Developer 何时检测到这种情况,在测试窗口的状态行都会有一个警告 显示出来:“警告:ORA-04068:现有的包声明已经被抛弃”。 同样地,如果你编辑和编译了 Java 源,任何现有的 Java 会话都会被清除。PL/SQL Developer 也将处理这种情况,将在状态行上显示:“警告:ORA-29549:类<类名> 已经被改变,Java 会话声明被清除了”。