程序员人生 网站导航

ORA-01436: 用户数据中的 CONNECT BY 循环

栏目:数据库应用时间:2016-07-01 12:56:09

今天在查询1个菜单的所有父菜单的时候,报“ORA-01436: 用户数据中的 CONNECT BY 循环 ”毛病,所用SQL以下:

select * from roles m start with m.rno='690702' connect by prior m.r_rno=m.rno;


仔细查看1下,发现记录RNO为69的记录,其父R_RNO也为69,致使死循环


解决方法:

select * from roles m start with m.rno='690702' connect by nocycle prior m.r_rno=m.rno;

采取nocycle来避免死循环,履行后效果如图,发现其将死循环的记录给去掉了


 

------分隔线----------------------------
------分隔线----------------------------

最新技术推荐