我的编程空间,编程开发者的网络收藏夹
学习永远不晚

MYsql-存储过程-游标的嵌套

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

MYsql-存储过程-游标的嵌套

在ITPUB: http://www.itpub.net/viewthread.php?tid=1134085&pid=13049789&page=1&extra=#pid13049789上有人发贴说游标不能嵌套,

自己搞了一下,答案确实是..

[@more@]

create table heyf_6 (empid int , deptid int );
insert into heyf_6 values (1,20),(2,30),(5,20),(4,50),(6,20);

--按DEPTID从小到大打印各个部分里的EMPID

DROP PROCEDURE IF EXISTS proc_empid;
DELIMITER //

CREATE PROCEDURE proc_empid()
BEGIN
declare done int default 0;
declare v_dept int ;
declare cur_dept cursor For select distinct deptid from heyf_6 order by deptid ;
DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET done = 1;
open cur_dept;
cursor_loop:loop
fetch cur_dept into v_dept;
set @dept = v_dept;
if done=1 then leave cursor_loop ;
end if ;
select 'DEPT: ' ,v_dept ;
begin
declare done1 int default 0;
declare v_emp int;
declare cur_emp cursor For select empid from heyf_6 where deptid =@dept ;
DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET done1 = 1;
open cur_emp;
cur_loop:loop
fetch cur_emp into v_emp ;
if done1=1 then leave cur_loop ;
end if ;
select '------------',@dept,v_emp ;
end loop cur_loop;
close cur_emp;
end;
end loop cursor_loop ;
close cur_dept;
END ;//
DELIMITER ;

call proc_empid;

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

MYsql-存储过程-游标的嵌套

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

MySQL存储过程和游标

一、存储过程什么是存储过程,为什么要使用存储过程以及如何使用存储过程,并且介绍创建和使用存储过程的基本语法。什么是存储过程:存储过程可以说是一个记录集,它是由一些T-SQL语句组成的代码块,这些T-SQL语句代码像一个方法一样实现一些功能(对单表或多表的增删改
MySQL存储过程和游标
2019-12-05

mysql 存储过程中双重循环嵌套的应用

话不多直接上代码,注释很详细,下面代码确认运行无误,自己去感悟吧朋友CREATE PROCEDURE SYC_FILE_DOC_INFO()BEGIN DECLARE A_PK_FILEDOC char(24); DECLA
mysql 存储过程中双重循环嵌套的应用
2021-05-21

在MySQL存储过程中怎么使用if嵌套语句

本篇内容主要讲解“在MySQL存储过程中怎么使用if嵌套语句”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“在MySQL存储过程中怎么使用if嵌套语句”吧!一、if语
2023-04-19

oracle存储过程的游标是什么

Oracle存储过程中的游标是一种用于遍历和访问查询结果集的数据库对象。游标可以被认为是指向某个查询结果集的指针,通过游标可以逐行地读取查询结果集中的数据。在存储过程中,游标通常用于以下几种情况:1. 遍历查询结果集:通过游标可以循环遍历查
2023-08-24

oracle存储过程游标怎么使用

在Oracle存储过程中,使用游标可以迭代访问结果集。以下是使用游标的一般步骤:1. 声明游标:在存储过程的声明部分,使用`CURSOR`关键字声明游标。例如:```sqlCURSOR cursor_name IS SELECT colum
2023-09-21

编程热搜

目录