首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > Mysql >

MYSQL游标嵌套循环示范

2012-08-27 
MYSQL游标嵌套循环示例本文将举例演示游标的嵌套用法,首先建造表结构,如下:drop procedure if exists `sp_

MYSQL游标嵌套循环示例

本文将举例演示游标的嵌套用法,首先建造表结构,如下:

drop procedure if exists `sp_nested_cursor`;create procedure `sp_nested_cursor`()begindeclare v_uid bigint(22);    declare v_code varchar(100);    declare v_value varchar(100);    declare _done TINYINT(1) default 0;declare cur_user cursor for select id from `tb_user`;    declare continue handler for not found set _done = 1;        open cur_user;    loop_xxx:loop    fetch cur_user into v_uid;        if _done=1 then        leave loop_xxx;        end if;        begin        declare _inner tinyint(1) default 0;        declare cur_param cursor for select code, value                                          from `tb_user_param`                                          where user_id=v_uid;            declare continue handler for not found set _inner = 1;             open cur_param;            loop_yyy:loop            fetch cur_param into v_code, v_value;                if _inner=1 then                leave loop_yyy;                end if;                insert into tb_key_value values (v_uid, v_code, v_value);            end loop;            commit;        end;    end loop;end;call `sp_nested_cursor`();
?如果想跟踪上面程序的执行过程,可以借助MySQL Debugger工具调试学习。

热点排行