唉,没办法啊,要在树中查找任意两个节点间是否存在上下级关系,
如果在程序界面上做也得递归着连数据库,速度也会很慢。
关键现在数据不是很多的情况下效能也较差,
我每次递归调用退出时都将cursor关闭了啊,难道close cursor不能真正将cursor从内存中消除?
请问 轻尘兄有无研究?
如果在程序界面上做也得递归着连数据库,速度也会很慢。
关键现在数据不是很多的情况下效能也较差,
我每次递归调用退出时都将cursor关闭了啊,难道close cursor不能真正将cursor从内存中消除?
请问 轻尘兄有无研究?
解决方案 »
- 比较同一表的两个字段 应该如何建索引或者有其他办法提高效率
- 请教PLSQL的如何书写
- 怎样实现这样的查询?
- ★★请问应聘Oracle开发的时候一般会问你什么问题? 我要找工作了,但是心里没底!!
- 请教这个动态带单引号sql语句存储过程怎么写
- oracle两个数据库的相互导数据
- ★★★★★救急啊!!!ora_01013:user requested cancel of current operation是怎么回事??ODBC连接Oracle数据库。Open表的时候出错。
- 请问各位高手,如何在P4下安装Oracle8.16
- 如何判断两个date型的时间为同一天
- 用sql语句实现挂号子系统后台程序
- 存储过程与触发器性能比较
- oracle9i默认是否基于成本优化? 基于成本优化是否定期手工要对数据库进行分析??怎样分析?谢谢大家!
但我想用start with ... connect by prior应该可以解决你的问题
SELECT ...FROM ...
WHERE ...
START WITH ...
CONNECT BY PRIOR ...
是发挥不了太大作用的.
我的需求如下:主要判断多棵树(保存于两个物理表,一个header,一个line,通过Header_id关联)中,任意
两个节点是否存在上下级关系我仔细考虑了,可能是程序逻辑问题,递归时可能有没退出去的情况.
也希望大家能提供更好的方法.
这两天要培训,同时还有工作任务,回帖慢了些....
原来错误原因在于对cursor的用法不熟,所以在网上(www.dbonline.cn)查到了一个pl sql对cursor
的用法.结果就没怎么怀疑地按照上面的做了,其实这个网址上的做法是错误的,只能产生一个死
循环的用法.因为没有将fetch * into * 放到循环体中.通过这件事对我也有个启示,"尽信书不如无书",网上的信息虽多而全,但要抱着怀疑的态度去接受,
而且还要自己理解透了再去应用,否则知识永远都是别人的.感谢大家的参与!