存储过程无法进行单步调试

有时候会突然发现存储过程无法进行单步调试

 

相信很多数据库开发人员都遇到过这种问题:

如下的存储过程,是无法单步调试的,直接点击调试按钮就进行执行了。

 

对应的对象在pl/sql developer中的信息如上,大家要注意Add debug information 的钩没有打上:

这个其实跟数据库的权限有关系:

select OWNER, OBJECT_NAME, OBJECT_TYPE, LAST_DDL_TIME, STATUS, DEBUGINFO

 

   from sys.all_probe_objects

 

  where owner = 'DATASYNC_1'

 

    and object_name = 'P_ODS_OS_USER_BEHA_MONTH'

请注意DEBUGINFO的查询结果为F

在这种状态下对此存储过程是无法单步调试的。解决办法在pl/sql developer中勾选“Add debug information”即可,但要注意勾选实际上执行的语句是“ALTER PROCEDURE OSS01.P_KILLJOB COMPILE DEBUG” .即对对应的对象实际上是执行了编译,这样引用对象将会失效,这在维护中需要注意。在执行此操作前,一定要检查引用对象情况,评估当前是否可以执行此操作。执行后立即检查是否有失效对象,如有立即编译。

勾选之后:

现在可以进行单步调试了。

 现在可以进行单步调试了。


转自:http://blog.csdn.net/huangchao_sky/article/details/8507722  道道老师的博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值