PL/SQL Developer中调试oracle的存储过程

作者:iamlaosong

唉,真土,以前用Toad,一直用dbms_output.put_line调试存储过程,只觉得不方便,用上PL/SQL Developer后,习惯性的还是用这个方法,人都是有惰性的。今天分析存储过程生成的数据,实在觉得不便,网上搜了一下,PL/SQL Developer中调试oracle的存储过程的方法,其实很简单。我知道学会使用PL/SQL Developer的调试功能,对于编写复杂的存储过程,包,funtion...非常有帮助,对执行存储过程形成的结果进行分析时也很有用处,学习之后,果然、当真方便,现将相关步骤摘录如下:

1、首先是编写存储过程,编译无误;
2、添加debug信息。为了能够单步跟踪存储过程,需要为其所在的包添加debug信息,右键点击需要调试的存储过程名称,在弹出菜单中选中[add debug information],这样就为包体添加了调试信息;

3、选择需要调试的存储过程名称,点击右键,在弹出菜单中 选择[Test],进去测试窗口,测试窗口中有为了测试该存储过程自动所产生的代码,当然你也可以自己另外加入和修改代码,自动生成的代码已经足够了。

begin
  -- Call the procedure
  sxjk_sn_jsgfl(pinput => :pinput);
end;

4、有参数的存储过程需要在下面的参数输入表格中输入参数值,见下图中的参数值“n”。

PL/SQL Developer中调试oracle的存储过程_第1张图片

5、开始调试。点击工具条上Start图标或者按F9进入调试模式,以后的调试过程跟我们熟悉的的调试过程就一样了(下面是菜单或者工具条上的部分调试功能):
Run(Ctrl+R)全速运行,到断点停下;
Step into(Ctrl+N)执行一步,如果是调用过程,进入子过程;
Step over(Ctrl+O)执行一步,无论什么语句;
Step out(Ctrl+T)执行完过程,直到从过程中退出到上一级;
。。。。。。
6、调试过程中可以设置断点(点击断点语句的左侧灰色空白处,出现一个红色的叉就是断点,再次点击可以取消),可以查看过程中的变量值(鼠标指向变量时,系统自动显示这个变量的值)。


如果无法单步执行或者无法设置断点,可能是上面第二步[add debug information]没有做。

你可能感兴趣的:(存储过程,plsql,开发工具,developer)