2012-09-18 52 views
3

我一直在使用PL/SQL为Oracle数据库创建软件包,我试图找到一个调试PL/SQL软件包而不使用“put_line”命令的好方法,是否有人有一些好的有关如何在Toad或SQLPlus上成功调试PL/SQL包的提示?在Toad中调试PLSQL

+2

你看过蛤蟆内置的文档吗? (帮助 - >索引 - >关键字“调试”) – tbone

回答

11

根据蟾蜍版本,图标和工具栏将有所不同,但过程是相同的:

  1. 确保“切换与调试编译”选项打开
  2. 点击“编译“按钮
      a。

      TOAD 9.7

      蟾蜍11.6:设置断点

  3. 点击

蟾蜍9.7 “与调试器执行PLSQL”

TOAD 11.6

+1

如何启用“切换编译调试”选项?我的图标是灰色的... – sharkbait

+4

@sharkbait你将需要被授予数据库权限,允许你进行调试。确切的特权取决于Oracle版本。 – wweicker

+1

谢谢;)@wweicker – sharkbait

1

首先,为了能够调试PL/SQL代码,必须具有适当的数据库特权才能进行调试。 (GRANT DEBUG CONNECT SESSION TO user)。如果你没有被授予这个特权,你的DB工具(如Quest TOAD)甚至可能不会显示调试选项,或者可能会禁用它。

enter image description here

其次,调试之前,所述代码(过程,函数或封装)它必须被预编译进行调试。当使用调试选项编译代码时,编译器会将其他数据插入编译代码中,以便在调试过程中停止在断点上。 (使用Toggle compile with Debug打开调试选项并编译您的代码)在调试完成开发阶段后,您应该重新编译代码而无需调试选项(关闭Toggle compile with Debug并编译您的代码)。

然后,您应该在您的代码中插入调试断点,并在执行期间在调试器中监视(变量)。

enter image description here

最后,你应该开始调试代码,执行将停止在第一个断点,并使用工具栏debugg你可以进入,单步跳过,运行光标......在你的代码。

enter image description here