博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Oracle存储过程遍历结果集
阅读量:6497 次
发布时间:2019-06-24

本文共 655 字,大约阅读时间需要 2 分钟。

hot3.png

需要给用户表的每个用户 id 都插入一行数据,大量的用户 id 一个个加是不可能的了

于是就得用存储过程来完成了,下面附上存储过程语句和注释

--新建存储过程并命名CREATE PROCEDURE "INSERT_CODE4USERID"      is  --游标,从tb_user表取出所有usertype=12的用户id  cursor user_id is  select USERID  from tb_user  where usertype = 12;  r_userid   tb_user.user_id%type;BEGIN  --打开游标  open user_id;  LOOP    --遍历商户id    <
> --循环遍历结果集 id 直到为空时退出循环 fetch user_id into r_userid; EXIT WHEN r_userid%NOTFOUND; --执行需要插入的语句 insert into UserPR values (r_userid,'test'); goto loop_block; END LOOP;END;

建议不要在存储过程中commit,在执行完存储过程,检查下无误后再手动commit会比较保险。

call INSERT_CODE4USERID();
commit;

 

转载于:https://my.oschina.net/xiaozhiwen/blog/1620083

你可能感兴趣的文章
【leetcode】Best Time to Buy and Sell 3 (hard) 自己做出来了 但别人的更好
查看>>
通过Navicat for MySQL远程连接的时候报错mysql 1130的解决方法
查看>>
sdut AOE网上的关键路径(spfa+前向星)
查看>>
C++编程思想重点笔记(上)
查看>>
【转发】什么时候该用委托,为什么要用委托,委托有什么好处
查看>>
[原]VS2012编译GLEW 1.11
查看>>
[AngularJS] Hijacking Existing HTML Attributes with Angular Directives
查看>>
关于android.view.WindowLeaked(窗体泄露)的解决方案
查看>>
微软职位内部推荐-Software Engineer II-News
查看>>
(转)I 帧和 IDR 帧的区别
查看>>
如何更快速加载你的JS页面
查看>>
解决oracle11g安装导致数据库无法自动搜集统计信息-转
查看>>
Unix_Linux系统定时器的应用(案例)
查看>>
[Java基础] Java如何实现条件编译
查看>>
【转】ubuntu 12.04 下 Vim 插件 YouCompleteMe 的安装
查看>>
设置网页标题图标
查看>>
mysql通过查看跟踪日志跟踪执行的sql语句
查看>>
Android_CodeWiki_01
查看>>
Web QQ 协议 登录加密算法 —— VC++实现
查看>>
Nutch 二次开发之parse正文内容
查看>>