oracle游标双循环

该段代码展示了在Oracle数据库中使用PL/SQL进行双循环操作,从资源表T_SYS_RESOURCE(以'交易订单查询'为起点)和角色表T_SYS_ROLE中遍历数据,并将数据插入到角色资源表T_SYS_ROLE_RESOURCE中,实现角色与资源的关联配置。
摘要由CSDN通过智能技术生成

oracle双循环
循环资源表(T_SYS_RESOURCE)和角色表(T_SYS_ROLE)
插入角色资源表t_sys_role_resource

declare 
--a表游标定义
 cursor a_SYS_RESOURCE_cur is
 SELECT RES_ID  FROM T_SYS_RESOURCE START WITH RES_ID IN (SELECT RES_ID FROM T_SYS_RESOURCE WHERE RES_NAME='交易订单查询') CONNECT BY PRIOR RES_ID = PARENT_ID ORDER BY PARENT_ID ASC;
  --b表游标定义
	 cursor b_T_SYS_ROLE_cur is
  SELECT ROLE_ID from T_SYS_ROLE;
BEGIN
	-- routine body goes here, e.g.
	-- DBMS_OUTPUT.PUT_LINE('Navicat for Oracle');
	for a_SYS_RESOURCE in a_SYS_RESOURCE_cur loop
	  EXIT WHEN a_SYS_RESOURCE_cur%NOTFOUND;
		for b_T_SYS_ROLE in b_T_SYS_ROLE_cur loop
		   --执行需要插入的语句
		insert into t_sys_role_resource values(erm.seq_sys_role_resource.nextval, b_T_SYS_ROLE.ROLE_ID, a_SYS_RESOURCE.RES_ID, sysdate, sysdate);
		end loop;
  end loop;
  
END;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值