TOAD里是可以设置断点,跟踪变量

解决方案 »

  1.   

    有一个test窗口的啊,你可以设置变量.也可以做一些其他的操作.我好象没遇到过这样的情况.
      

  2.   

    to freddy2003() :能说详细点吗,谢谢.to  dinya2003(OK) :您说的是哪个工具?PL/SQL Developer里有test但我没跟踪到值,TOAD里我没找到.
      

  3.   

    1 打开树functions
    2 鼠标右键你的函数f_test...
    3 选择菜单功能Add debug information
    4 鼠标右键你的函数f_test...
    5 选择菜单功能Test
    6 在测试界面中输入你的输入参数
    7 选择右边的debug按钮就可以了
      

  4.   

    3 选择菜单功能Add debug information
    -----------------------------------------
    我没找到,版本问题?
      

  5.   

    是版本问题.
    抄来一段.
    如何对存储过程进行Debug? 
    u 需要Toad单独的Debug Option(Standard Version 没有这个选项) 
    u 要用Toad对存储过程进行debug,必须安装Oracle的系统包:dbms_debug,而且必须安装Oracle Probe API v2.0 或者更高的版本。 
    u 集成在Stored Precedure Editor里面,可以一边编写一边调试,大大提高开发效率 
    u 打开Procedure Editor后,Debug菜单激活,可以开始进行Debug工作。 
    u 允许对存储过程进行逐行调试、断点调试,也支持对触发器进行调试。 
    u 可以有断点支持,支持Watch变量,允许运行时改变变量的值 
    u 允许对多层调用的Debug支持 
    调试步骤具体举例: 
    1. 点击菜单栏的第三个按钮: ,打开Procedure Editor 
    2. 点击Procedure Editor的菜单栏的 按钮,调出需要调试的存储过程 
    3. 单击工具栏上的按钮 ,输入需要传入的参数,如果不需要传入参数,可以直接单击工具栏上的按钮: ,直接开始调试,如下图输入传入参数: 4. 单击菜单栏的按钮: ,可以单步跟踪,也可以定义一个断点,直接运行到断点在单步执行,在存储过程运行的过程中,当前语句会高亮度显示,并且把鼠标指针定位到变量上,Toad自动显示该变量的当前值。 5. 可以随时中止程序的执行,只要点Debug ->Halt Execution,或者菜单栏上的按钮 ,就可以中止程序的执行 
    6. 当碰到一个存储过程调用另外一个存储过程的时候,可以选择跳过(Step Over)  ,这样就直接运行那个被调用的存储过程,返回调用结果,继续这个存储过程的调试,也可以选择Trace Into ,这样就打开被调用的存储过程,进一步深入调试那个被调用的子存储过程。如果需要保持Debug信息,在编译的时候应该选择Compile Dependencies with Debug Information,就是Procedure Editor工具栏最右边的那个按钮 。 
    7. 支持对变量实时追踪:使用Watch: 
    可以在运行前,或者运行过程中对某个变量进行实时跟踪:Add Watch,把鼠标定位到该变量上,然后点击Debug ->Add  Watch At Cursor,该变量就会出现在Debug状态窗口上,而且实时反应该变量的当前值。如上图中的变量v_empname。可以运行时刻修改 
    8. 断点支持: 
    单击存储过程需要加断点的地方的行号,该行颜色变红,输入参数,单击执行按钮 ,可以直接运行到断点处,可以不必逐行追踪,更加高效率的进行调试。 
    Debug Option还支持条件断点,只有当满足条件的时候才会在那个地方停止,否则就好像不存在这个断点一样继续运行。 Ë 注意DBMS_OUTPUT.PUT_LINE的结果只有当程序执行完成以后才会出现,在程序执行过程中是没有结果的。