零度星河
返回
发布于 更新于 阅读:79 评论:0

MySQL之游标

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
delimiter $
create PROCEDURE phoneDeal()
BEGIN
DECLARE ids varchar(64);
 
-- 遍历数据结束标志
DECLARE done INT DEFAULT FALSE;
-- 游标
DECLARE cur_account CURSOR FOR SELECT id FROM shop_category WHERE pid='0';
-- 将结束标志绑定到游标
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
 
-- 打开游标
OPEN cur_account;
-- 遍历
read_loop: LOOP
-- 取值 取多个字段
FETCH NEXT from cur_account INTO ids;
IF done THEN
LEAVE read_loop;
END IF;
set @i = (SELECT UUID());
update shop_category set id = @i WHERE id=ids;
update shop_category set id=UUID(), pid = @i WHERE pid=ids;
END LOOP;
 
CLOSE cur_account;
END $
 
call phoneDeal();
评论 (0)
暂无评论 来抢沙发吧~

目录

暂无目录

SpringWonderland

探索 Spring 生态的奇妙世界

2025-04-08 23:42

我的标签

随笔分类

归档

查看完整归档 →