1、直接定义多个显示游标 
CREATE OR REPLACE PROCEDURE ACC.DBP_REALCITYTRAFFICCNT IS 
CURSOR cur1 IS SELECT 。。。 --第一个游标

CURSOR cur2 IS SELECT 。。。 --第二个游标

BEGIN

--调用cur1 
BEGIN 
OPEN cur1 ;   
  LOOP 
  FETCH cur1 INTO 。。。 
  EXIT WHEN cur1%NOTFOUND;   
  ...业务逻辑 
  COMMIT;

END LOOP; 
  CLOSE cur1;

END;

--调用cur2 
BEGIN 
  OPEN cur2 ;   
  LOOP 
  FETCH cur2 INTO 。。。 
  EXIT WHEN cur2%NOTFOUND;   
  ...业务逻辑 
  COMMIT;

END LOOP; 
  CLOSE cur2;

end; 
END DBP_REALCITYTRAFFICCNT;

-------------------------- 
2、通过定义ref游标来实现 
TYPE refcur_t IS REF CURSOR; --声明REF游标类型

cur1 refcur_t; --声明第一个游标REF游标类型的变量

cur2 refcur_t; --声明第二个游标REF游标类型的变量

BEGIN

--调用cur1 
BEGIN 
OPEN cur1 ;   
  LOOP 
  FETCH cur1 INTO 。。。 
  EXIT WHEN cur1%NOTFOUND;   
  ...业务逻辑 
  COMMIT;

END LOOP; 
  CLOSE cur1;

END;

--调用cur2 
BEGIN 
  OPEN cur2 ;   
  LOOP 
  FETCH cur2 INTO 。。。 
  EXIT WHEN cur2%NOTFOUND;   
  ...业务逻辑 
  COMMIT;

END LOOP; 
  CLOSE cur2;

end; 
END DBP_REALCITYTRAFFICCNT;

存储过程定义多个游标多个begin的更多相关文章

  1. T-SQL应用,视图、存储过程、触发器、游标、临时表等

    sqlserver常用操作: 视图.存储过程.触发器.函数 --*********************批处理********************* --[在一个批处理中存有一个语法错误,则所有 ...

  2. SQL Server 存储过程、触发器、游标

    存储过程 1.存储过程是事先编好的.存储在数据库中的程序,这些程序用来完成对数据库的指定操作. 2.系统存储过程: SQL Server本身提供了一些存储过程,用于管理有关数据库和用户的信息. 用户存 ...

  3. mysql视图和存储过程定义者修改脚本(懒人专用)

    前言: 在实际工作中mysql数据库的迁移.备份恢复.数据库重命名等一系列涉及到视图和存储过程定义者问题都会需要修改,每次都要从基础表获取数据,然后手工整理做脚本,十分麻烦,所以简单写了个过程,以后可 ...

  4. Mysql 存储过程中使用多游标

    Mysql 存储过程中使用多游标 drop procedure IF EXISTS test_proc_1; create procedure test_proc_1() begin ; ) ; ) ...

  5. oracle 存储过程定义及调试,并终于被C# 调用 代码

    C# 调用存储过程 參考了非常多文章,写了例如以下文字,算是分享吧 目的:更改积分,并作一定校验 一.一般的调试方法: 方法一:带返回out參数,必须定义变量 myresult DECLARE myr ...

  6. MySQL能否授予查看存储过程定义权限给用户

    在其他RDBMS中,可以将查看某个存储过程(PROCEDURE)定义的权限给某个用户,例如在SQL Server中,可以单独将查看ProcedureName定义的权限授予UserA GRANT VIE ...

  7. Oracle存储过程中如何使用游标

    --本存储过程的功能:把test_tbl2中与test_tbl1中ID相同但salary不同的记录中的salary的值更新为test_tbl1中的salary的值--创建存储过程create or r ...

  8. Oracle 存储过程procedure之数据更新-游标

    在日常工作中,经常会碰到后台外导一批数据,并将外导数据处理至系统表中的情况. 面临这种情况,我一般采用写存储过程批处理的方式完成,写好一次以后,再次有导入需求时,只需要将数据导入到中间表,然后执行存储 ...

  9. MySQL存储过程、函数和游标

    这里我新建了两个表,一个users和test CREATE TABLE users( username ), pwd ) ); CREATE TABLE test( id INT, username ...

随机推荐

  1. asp.net web api 2 host in a windows service推荐阅读

    最简单的例子(官方)在控制台app里面运行: http://www.asp.net/web-api/overview/hosting-aspnet-web-api/use-owin-to-self-h ...

  2. 润乾报表html代码填报

     由于html和富文本类型的单元格,不能进行可写操作,如果要想填报时填入html代码并且提交后更新就要换了一个方法,通过数据回填的方法. 比如在C3单元格设置html事件(也可以通过一个按钮来触发 ...

  3. phantomjs在centos7下的安装

    http://phantomjs.org/download.html 下载 Linux 64-bit 解压 tar jxvf 安装包名称.tar.bz2 pwd 查看路径 ln -sf phantom ...

  4. maven一键部署linux的tomcat(wagon-maven-plugin)

    Maven是一个项目管理工具,它包含了一个项目对象模型 (Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Depen ...

  5. Python Socket实现简单web服务器

    #!/usr/bin/python env # coding:utf-8 import socket ip_port = ('127.0.0.1', 80) back_log = 10 buffer_ ...

  6. Ubuntu 16.04下 - vi编辑器使用【backspace】无法删除

    参考:https://blog.csdn.net/leiwangzhongde/article/details/83339589

  7. 安装android-sdk,gradle mac 篇

    安装包管理器 Homebrew /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/insta ...

  8. CentOS6.4 下安装 Apache2.4.16

    1.准备工作 1.1.yum安装部分工具 1)yum -y install vim 2)yum -y install wget 3)yum -y install gcc 4)yum -y instal ...

  9. js过滤HTML标签以及 

    function removeHTMLTag(str) { str = str.replace(/<\/?[^>]*>/g,''); //去除HTML tag str = str.r ...

  10. Mybatis将结果放入map时别名不是驼峰形式

    查询时如果给字段起别名,并且将查询结果映射到一个Map,那么Map的key将是忽略大小写的.映射到一个实体类是没这个问题的. state as addState 从Map中取值时应该:map.get( ...