存储过程实现递归

原创 2006年05月25日 10:48:00

在存储过程中实现递归操作在实际开发中是经常遇到的,象有继承关系的用户权限、组权限,功能菜单树等等。需要通过一个存储过程返回最终结果的时候就要用到了。对于返回结果为一个值的时候叫简单,返回结果为一个数据集的时候,我是用全局表来实现的。

1、返回一个值的情况:通过一out型参数返回值结果

 

2、返回数据集的情况:需要用两个存储过程,第一个存储过程(sp_A)供外部调用,它负责创建和删除全局临时表(##TempTableAB)调用第二个存储过程(sp_B),第二个存储过程实现递归并将操作结果保存到全局临时表。

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

存储过程实现递归算法

以经典的阶乘算法为例。Oracle:[sql] view plain copycreate or replace procedure factorial(n in number, b out ...

递归用函数、存储过程实现的效果

--測試  create table ta (项目 varchar(20),上级项目 varchar(20),num int)insert taselect A, ,100 union allsele...
  • roy_88
  • roy_88
  • 2006-12-24 18:21
  • 4573

PLSql -- 递归查询的另几种实现方式(函数/存储过程)

利用函数/存储过程/WITH实现递归查询,这是一个树结构,查询教师“胡明星”的所有主管及姓名:(无主管的教师也需要显示),显示(教师编号、教师名称、主管编号、主管名称)...

mysql递归存储过程

mysql读取树形结构所有子节点 mysql递归查询 详解 存储过程详解 查询所有子节点详解

call Pro_GetUnderOrg('a2a8d12675284d5cb38c879e542aac9f');   create procedure Pro_GetAllChildrenT...

sql删除树节点 及其子节点的全部(存储过程,游标,递归)

删除父节点及父节点之下的全部节点 比如删除节点为3,将递归删除其下的全部节点6,11,12     表里面需要创建ID ,PID TID用处以后对树的复制操作 表格式如图所示: PID用于存放节点的...

mysql存储过程-递归赋值国家地区

申明:下列存储过程适合表已经有数据,需要为某字段赋值(国,省,市,区,县等)数据时使用。1.创建regionAdd存储过程,查询国表信息传入参数到reg存储过程中 /*删除存储过程regionAdd*...

关于sql递归存储过程的问题

sql递归查询:单表操作 表数据(subTable表) Id Title ParentId RoleId 1 展示 0 1 2 评估 0 2...

mysql存储过程递归删除外键关联表

为了方便测试,我们经常会需要删除测试数据,但是因为外键的限制,或者关联的数据太多等,导致很难清楚某个用户的数据,该存储过程可以根据一张表中某个字段的值,来删除其作为外键的表,以及依此递归下去的所有表的...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)