plsql中如何单步调试带参数的存储过程

记得上次帮同事调试那个存储过程,他急得满头大汗。
我让他按你说的试试,他在 test 下的 inmonth 里面填了个“7 ”,然后看 a 的 value 那里是空的,心想这下肯定不行。
结果运行完,b 居然就有了值。
他愣在那儿,说:“怎么空的也能赋值?”我看了看屏幕,上面显示 b 现在是“apple”,而 a 的 value 一直是空。
哦,原来是这样啊。
等等,还有个事,我突然想到,是不是他那个环境里,默认的 a 被赋了一个空值,所以看起来像是空的,其实系统早就给它填了?

oracle中有个存储过程A,怎么得到调用A的所有存储过程? plsql中怎么去查看?求大大帮忙!~~

说实话,在Oracle的PL/SQL Developer里找存储过程A,这操作我天天干。
你先得把那个树形列表点开,通常是那个大数据库图标。
然后顺着找到你要的那个库,比如HR或者SCOTT,点进去。
存储过程一般都在"Program Units"或者"存储过程"这种分类下,看具体版本默认怎么分。
找到A这个过程,前面肯定有个小黑方块,点一下加号展开。
展开后里面会有几个选项,reference或者依赖这些词,点那个reference,底下马上就列出了调用A的所有函数和过程。
这玩意儿特别直观,我上次帮同事找的时候,他直接在屏幕那头喊我"哎哎,你看那个调用三次的B过程,就是靠这个找的"。
当然,要是A特别复杂,被嵌套调用好几层,可能得一个个点开看。

plsql调用存储过程报错,怎么调试

哎,调试 PL/SQL 存储过程出错了,确实挺烦人的。
我跟你讲讲我是怎么弄的,你参考下。

首先啊,得打开 PL/SQL Developer。
如果你那机器上装了这个,你就打开它。
界面你输入用户名,密码,还有那个 host 名字,这个得跟你程序里 web.config 配置的一模一样,别搞错了。
点确定。
然后你得找到你那个出错的存储过程在哪个包里,比如说,我那个存储过程是在叫 PACK_ACTIVITY 这个包里的。
你找到这个包,右键点它,在菜单里找到“查看”,点一下。
这样你就看到了包里所有存储过程,还有它们的代码。

接下来啊,关键一步,得给这个包加调试信息。
为啥要加?为了能单步跟踪啊。
你那个包,右键点它,在菜单里找到“添加调试信息”,这个很重要,千万别忘了点。
点完了,这个包就加上了调试信息。

然后呢,准备就绪了,可以开始调试跟踪存储过程了。
你选中那个需要调试的存储过程,右键点它,在菜单里选“测试”。
会弹出一个测试窗口。
这个窗口里会自动生成一些代码,是专门为了测试你那个存储过程。
当然,你也可以自己再添点代码或者改改,不过我们现在只是为了调试,自动生成的代码就行了。

最后啊,你就按照调试的步骤来操作。
一步一步走,看看是哪一步出问题了。
我当时也懵,试了好几次,后来才反应过来,可能是哪一步逻辑没对。
调试的时候,注意看变量的值,对不对。
可能我偏激,觉得这事儿挺闹心的,但解决之后就好多了。