PLSQL Developer调试 存储过程和触发器
1. 打开PL/SQL Developer如果 在机器上安装了PL/SQL Developer的话,打开PL/SQL Developer界面输入 用户名,密码和host名字,这个跟在程序中web.config中配置的完全相同,点击确定 找到 需要调试的存储过程所在的包(Package bodies),如PACK_ACTIVITY,点击右键,在弹出菜单中选择[查看],得到包中的所有存储过程和他们的代码.
2. 添加debug信息为了 能够单步跟踪存储过程,需要为其所在的包添加debug信息,右键点击需要调试的包,在弹出菜单中选中[添加调试信息](这个很重要).这样 就为包体添加了调试信息。
3. 调 试存储过程现在 所有的准备工作都做好了,可以调试跟踪存储过程了。选择 需要调试的存储过程,点击右键,在弹出菜单中 选择[测试],进去测试窗口.测试窗口中有为了测试该存储过程自动所产生的代码,当然你也可以自己另外加入和修改代码,对于我们目前只是为了调试存储过程, 自动生成的代码已经足够了。接着按照如下的步骤进行调试。
(1)添加存储过程所需要的参数,我们项目中的大多数存储过程都是需要参数 的,参数可以在测试窗口右下部分输入。如:GetPanNO_New需要一个输入参数v_employeeid,我们输入180,输出参数是mycursor,是查看结果的,不需要输入任何值。
(2)开始调试,点击[调试]菜单->[开始](或者按F9),就进去调试模式了,程序开始停在begin这一行.
(3)以后的调试过程跟我们熟悉的的调试过程就一样了:运行(Ctrl+R)单步 进入(Ctrl+N)单步 跳过(Ctrl+O)单步 退出(Ctrl+T)或者 点击debug工具条上的按扭:当按Ctrl+N进去存储过程的源代码中后 在这 个窗口中可以查看过程中的变量值和堆栈。
(4)调试运行完了后,可以查看结果如下(点击mycursor变量旁边的按钮).
4. Tip 令人 比较郁闷的是我们项目中很多的存储过程都是一个SELECT语句,不管这个SELECT语句多么复杂(SELECT语句中有嵌套的子SELECT语句),它也只能作为一行代码,单步跟踪就没有什么意义了。
使用图例:
- 右键点击要调试的触发器,选择编辑,在行号位置上点击一下设置断点。(如果看不清图片,可以点击图片查看图片)

- 在菜单的新建中选择“测试窗口”,打开一个如下块,在begin和end中间添加能触发触发器的语句

- 按F9或者点击调试菜单中的开始菜单,进入运行调试状态

- 点击运行图标跳到触发器中断点位置

- 鼠标放到变量上可以显示变量值。

PLSQL Developer调试 存储过程和触发器的更多相关文章
- Oracle SQL Developer 调试存储过程步骤(Oracle)
1.首先你编译通过你的存储过程,编译的时候一定要选“编译以进行调试”. 2.在想要调试的行上设置好断点. 3.点击“调试”按钮,然后输入存储过程入参,点“确定”开始调试. 4.断点进入后,上方会出现一 ...
- plsql developer如何查询SQL语句执行历史记录(转)
相信很多在plsql developer调试oracle的朋友,经常会遇到在plsql developer执行的某一条SQL语句没有保存,那么我们在plsql developer下如何找到我们执行过的 ...
- plsql developer 导出导入存储过程和函数
说明:需要把建表脚本及表数据分开导出,操作很简单.一.导出表及存储过程等对象:1. 登录PL-SQL Developer2. 选择只显示本用户的对象,如下图:3. 选择菜单“Tools——〉Expor ...
- plsql调试存储过程卡住的原因以及处理
用PLSQL调试存储过程的时候,经常会遇到这个的情况,点调试后,继续点单步都是灰色,想停下来,但是取消也要点很多次才能取消掉. 就像下面的情况: 一直以为是个BUG,直到最近有人告诉我了真相. 出现这 ...
- PLSQL Developer 运用Profiler 分析存储过程性能
最近应公司需要,需要编写ORACLE存储过程.本人新手,在完成存储过程的编写后,感觉需要对存储过程中各个语句的执行时间进行分析,以便 对整个存储过程进行优化. 由于用的是PLSQL Developer ...
- PLSQL Developer软件使用大全
PLSQL Developer软件使用大全 第一章 PLSQL Developer特性 PL/SQL Developer是一个集成开发环境,专门面向Oracle数据库存储程序单元的开发.如今,有越来越 ...
- PLSQL Developer的使用之对象浏览器
PLSQL Developer的使用之对象浏览器 (转自https://www.cnblogs.com/mq0036/p/6437834.html#point11) 能够显示与 PL/SQL 开发相关 ...
- [转]PLSQL Developer软件使用大全
原文地址:https://www.cnblogs.com/lhrbest/p/6493218.html 第一章 PLSQL Developer特性 PL/SQL Developer是一个集成开发环境, ...
- PLSQL Developer 攻略
.Net程序员学用Oracle系列(18):PLSQL Developer 攻略 1.功能说明及使用技巧 1.1.对象浏览器 1.2.SQL 窗口 1.3.测试窗口 1.4.命令窗口 1.5.图表 ...
随机推荐
- CCNP第四天 OSPF综合实验(1)
ospf综合实验(1) 本实验主要考察ospf中的接口上的多种工作方式 实验如图所示: 所用拓扑为CCNP标准版,如图: --------------------------------------- ...
- Catalyst揭秘 Day2 Catalyst源码初探
Catalyst揭秘 Day2 Catalyst源码初探 这节课从源码角度来讲catalyst. 首先有一个观点要澄清,就是技术不是越底层就越是性能和效率更高.因为除了指令执行性能以外,更重要的是架构 ...
- xml学习总结(二)
XML Schema (1)Schema内置类型 ->字符串类型 <strlist xmlns:xsi="http://www.w3.org/2001/XMLSchema-ins ...
- Python 信号量
信号的概念 信号(signal)-- 进程之间通讯的方式,是一种软件中断.一个进程一旦接收到信号就会打断原来的程序执行流程来处理信号. 几个常用信号: SIGINT 终止进程 中断进 ...
- max_size, capacity and size 的区别
The max_size() function returns the maximum number of elements that the container can hold. The max_ ...
- 不得不知道的Python字符串编码相关的知识
开发经常会遇到各种字符串编码的问题,例如报错SyntaxError: Non-ASCII character 'ascii' codec can't encode characters in posi ...
- Flex读文本文件
布局: <s:Group id="> <s:Rect width="100%" height="100%"> <s:fi ...
- linux grep、find 命令详解
grep1.作用grep命令可以指定文件中搜索特定的内容,并将含有这些内容的行标准输出.grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权 ...
- python学习笔记11(函数二): 参数的传递、变量的作用域
一.函数形参和实参的区别 形参全称是形式参数,在用def关键字定义函数时函数名后面括号里的变量称作为形式参数. 实参全称为实际参数,在调用函数时提供的值或者变量称作为实际参数. >>> ...
- 1052: [HAOI2007]覆盖问题 - BZOJ
Description 某人在山上种了N棵小树苗.冬天来了,温度急速下降,小树苗脆弱得不堪一击,于是树主人想用一些塑料薄膜把这些小树遮盖起来,经过一番长久的思考,他决定用3个L*L的正方形塑料薄膜将小 ...