PL/Sql Dev 调试Oracle存储过程、触发器、函数
2012-08-06 17:01
357 查看
本处以调试函数为例,其他的调试与此相同
1.调试位置
通常情况下,要在pl/sql Dev中调试程序有两个地方:
1).新建->测试窗口:
2).在要调试的程序上点击右键->测试
2.调试过程
1).通过调试位置进入测试窗口,如下图:
其中:点击1位置(或者按F9)进入调试器,2位置显示的是程序所声明的输入输出参数,如果是输入参数,需要在此处填入相应的输入值,输出参数会在执行调试完后显示。
2).按F9进入开始调制器,如图所示:
其中:1----中断调试,2----单步调试,简单点就是一步一步的执行;绿色的箭头表示全部运行完这个程序,如果有断点设置,也可以跳入到下一个断点。
3).单击单步调试,进入函数,如图
在此,可以尝试单步调试,一步一步运行程序
4).设置断点,如图
在文本区域最左侧的边框进行左键单击,如果有行号显示,也就是行号所在的位置,如图:
点击绿色的箭头,可以直接运行到设置断点处
5).对变量进行监控,如图
1位置为监控窗口,这个窗口可以把你要监视的变量进行显示,你把你需要监视的变量复制到这个窗口就可以了,也可以在变量上单击右键->添加变量到监视器(位置2)。
继续单步执行,可以看到监控变量(位置3)值的变化。
3.权限问题(ORA-0131)
1)调试程序时,报错为ORA-0131:Insufficient privileges,如图:
原因是用户权限不够,是缺失 DEBUG CONNECT SESSION 系统权限所致
2)解决办法:以SYS用户登录数据库,执行赋权操作:
注明:1.有网友指出还需赋予DEBUG ANY PROCEDURE的权限,经测试,该权限可不用赋予!
2.可以从数据字典session_privs表查看该权限相关信息(需要以user_name登录):
1.调试位置
通常情况下,要在pl/sql Dev中调试程序有两个地方:
1).新建->测试窗口:
2).在要调试的程序上点击右键->测试
2.调试过程
1).通过调试位置进入测试窗口,如下图:
其中:点击1位置(或者按F9)进入调试器,2位置显示的是程序所声明的输入输出参数,如果是输入参数,需要在此处填入相应的输入值,输出参数会在执行调试完后显示。
2).按F9进入开始调制器,如图所示:
其中:1----中断调试,2----单步调试,简单点就是一步一步的执行;绿色的箭头表示全部运行完这个程序,如果有断点设置,也可以跳入到下一个断点。
3).单击单步调试,进入函数,如图
在此,可以尝试单步调试,一步一步运行程序
4).设置断点,如图
在文本区域最左侧的边框进行左键单击,如果有行号显示,也就是行号所在的位置,如图:
点击绿色的箭头,可以直接运行到设置断点处
5).对变量进行监控,如图
1位置为监控窗口,这个窗口可以把你要监视的变量进行显示,你把你需要监视的变量复制到这个窗口就可以了,也可以在变量上单击右键->添加变量到监视器(位置2)。
继续单步执行,可以看到监控变量(位置3)值的变化。
3.权限问题(ORA-0131)
1)调试程序时,报错为ORA-0131:Insufficient privileges,如图:
原因是用户权限不够,是缺失 DEBUG CONNECT SESSION 系统权限所致
2)解决办法:以SYS用户登录数据库,执行赋权操作:
SQL> grant DEBUG CONNECT SESSION to user_name;
注明:1.有网友指出还需赋予DEBUG ANY PROCEDURE的权限,经测试,该权限可不用赋予!
2.可以从数据字典session_privs表查看该权限相关信息(需要以user_name登录):
SQL>conn scott/tiger; SQL> select * from session_privs; PRIVILEGE ---------------------------------------- CREATE SESSION UNLIMITED TABLESPACE CREATE TABLE CREATE CLUSTER CREATE SEQUENCE CREATE PROCEDURE CREATE TRIGGER CREATE TYPE CREATE OPERATOR CREATE INDEXTYPE DEBUG CONNECT SESSION DEBUG ANY PROCEDURE 12 rows selected
相关文章推荐
- PL/Sql Dev 调试Oracle存储过程、触发器、函数
- PL/Sql Dev调试Oracle存储过程、触发器、函数
- PL/Sql Dev 调试Oracle存储过程、触发器、函数
- PL/Sql Dev调试Oracle存储过程、触发器、函数
- PL/SQL 数据库访问的相关技术(2)游标 、异常、存储过程、函数、包、触发器
- 在PL/SQL 开发中调试存储过程和函数的一般性方法
- Oracle笔记 十一、PL/SQL函数和触发器
- PL/SQL如何调试Oracle存储过程
- 在PL/SQL开发中调试存储过程和函数的一般性方法
- PL/SQL语句块基本语法(ORACLE存储过程,函数,包,游标)
- OraclePL/SQL函数和触发器
- Oracle(20)pl/sql编程 过程、函数、包以及触发器概念
- PL/SQL函数和触发器
- PL/SQL Developer调试存储过程,函数
- PL/SQL函数和触发器
- PL/SQL如何调试Oracle存储过程
- Oracle笔记 十一、PL/SQL函数和触发器
- Oracle存储过程单步调试方法(使用pl/sql developer工具)
- oracle(3)pl/sql编程基础 存储过程、函数、包、触发器
- PL/SQL(Procedural Language/SQL)编程简介 游标,过程,函数,包,触发器