关于MySQL游标的嵌套使用
2009-06-04 10:43:07 来源:WEB开发网前几天群里有人问MySQL的游标能不能嵌套使用,想当然地以为不能,后来试了下,居然可以,唉,不能随便想当然啊。例子如下:
CREATE PROCEDURE curdemo()
NOT DETERMINISTIC
CONTAINS SQL
SQL SECURITY DEFINER
COMMENT ''
BEGIN
declare done1,done2 int default 0;
declare name1,name2 varchar(20);
declare id1,id2 int;
declare cur1 cursor for select id,name from test1;
declare continue handler for not found set done1 = 1;
open cur1;
repeat
fetch cur1 into id1, name1;
if not done1 then
insert into test3(name) values(name1);
begin
declare cur2 cursor for select id,name from test2;
declare continue handler for not found set done2 = 1;
open cur2;
repeat
fetch cur2 into id2,name2;
if not done2 then
insert into test3(name) values(name2);
end if;
until done2 end repeat;
close cur2;
set done2=0;
end;
end if;
until done1 end repeat;
close cur1;
commit;
END;
更多精彩
赞助商链接