控制执行
本节包含如下内容:
开始调试
在“对象浏览器”窗格中选择需调试的函数。单击工具栏中的(或使用前文提到的其他方法)开始调试。如果没有设置断点,或者设置的断点无效,则不会停止任何语句、进行调试操作,而仅会执行对象并显示结果(如有)。
单步调试PL/SQL函数
调试执行函数时,用户可使用工具栏中的单步调试命令。通过进行单步控制,可逐行调试程序。如果进行单步操作时遇到断点,则该单步操作会停止,程序也会暂停执行。
“单步”是指一次执行一条语句。单步执行一条语句后,可以在其他调试窗口中查看执行结果。
一次最多可以弹出100个“PL/SQL Viewer”页签。如果打开的页签超过100个,则调用函数页签关闭。例如,如果已打开100个页签,且调试对象调用了新调试对象,则Data Studio会关闭调用函数并打开新的调试对象。
单步进入
在选择“调试”菜单中选择单步进入、按或者按F7,都可以逐条语句执行代码。
当单步跳入一个函数,Data Studio执行当前语句,然后进入调试模式,调试位置由左侧标尺区域中的箭头表示。如果执行语句调用另一个函数,Data Studio将单步跳入该函数。一旦函数中的所有语句执行完成,Data Studio将跳回其调用函数的下一语句。
单步进入(F7),进入下一语句如果按“继续”,PL/SQL代码执行将继续。
例如:
跳入第8行时,进入m := F3_TEST();,即进入f3_test()中的第9行。持续单步进入(F7),进入每一行,从而执行f3_test()中的所有语句。一旦该函数中的所有语句执行完毕,Data Studio跳回f2_test()中的第10行。
以函数名为标题的页签中,当前调试对象用星号(*)标记。
单步跳过
单步跳过与单步进入相同,除非调用了另一个函数,否则不会跳入该函数。该函数将运行,进入当前函数中的下一个语句。F8是单步跳过的快捷键。如果该调用函数内设置了断点,单步跳过将进入该函数,并命中该断点。
下面的例子中,如在第10行单击“单步跳过”,Data Studio将运行f3_test()进程。
光标移动到f2_test()中的下一语句,即f2_test()中的第11行。
用户熟悉了该函数的工作方式,并确保函数的执行不会影响正在调查的问题后,可以单步跳过该函数。
同单步进入该行一样,单步跳过不包含函数调用的一行代码执行该行。
单步退出
子程序单步退出,继续该函数的执行,在该过程返回其调用函数后,暂停执行,确定该函数的剩余部分无需调试后,可单步退出该段函数。然而,如果该函数其余部分设置了断点,在返回调用函数前,该断点将被命中。
单步跳过和单步退出过程都会执行函数。单步退出操作的快捷键是“Shift+F7”。
上图所示例子中,
- 选择“调试 > 单步进入”单步进入f3_test()。
- 选择“调试 > 单步退出”单步退出f3_test()。