存储过程求高人!~~~~总是进入死循环
我是一个小白,刚开始学习。写了一个存储过程总是进入死循环。求帮忙
BEGIN
declare leftId varchar(32);/* 声明变量:左边安置的id*/
declare rightId varchar(32);/* 声明变量:右边边安置的id*/
declare nextId varchar(32);/* 声明变量:父级id*/
set nextId=shop_in_id;
set leftId = '0';
set rightId='0';
/* addTO 循环 开始*/
lop1:loop
select id into leftId from member where leftPartition_id =nextId;/* 获得 父级 左边 id 分区*/
if leftId is not null then
update member set leftPartitionNumber = leftPartitionNumber+1 where id=leftId;/* 获得 父级 左边 分区数+1*/
else
set leftId = '0';
select id into rightId from member where rightPartition_id = nextId;/* 获得 父级 右边 id 分区*/
if rightId is not null then
update member set rightPartitionNumber =rightPartitionNumber+1 where id=rightId;/* 获得 父级 右边 分区数+1*/
else
set rightId='0';
end if;
end if;
if leftId !='0' then
set nextId=leftId;
end if;
if rightId !='0' then
set nextId=rightId;
end if;
if rightId = '0' and leftId ='0' then
leave lop1;/* addTO 循环 跳出结束*/
end if;
end loop;
END