查询ID作为参数存储到其他的表
注意:delimiter 关键词不能少,下面代码可以直接复制过去,后面的代码是我的案例
delimiter //
drop procedure if exists nelsonTest;
CREATE PROCEDURE nelsonTest()
begin
declare temp_id varchar(36);
declare flag int default 0;
declare s_list cursor for 查询你的数据;
# 为下面while循环建立一个退出标志,当游标遍历完后将flag的值设置为1
declare continue handler for not found set flag=1;
open s_list; # 打开游标
# 将游标中的值赋给定义好的变量,实现for循环的要点
fetch s_list into temp_id;
while flag <> 1 do
你的业务代码写到这里
fetch s_list into temp_id;
end while;
close s_list; # 关闭游标
end
//
delimiter ; # 重新定义;为一句sql的结束标志
call nelsonTest(); # 调用
delimiter //
drop procedure if exists nelsonTest;
CREATE PROCEDURE nelsonTest()
begin
declare temp_id varchar(36);
declare flag int default 0;
declare s_list cursor for SELECT id FROM baseline_auth.user_account ;
# 为下面while循环建立一个退出标志,当游标遍历完后将flag的值设置为1
declare continue handler for not found set flag=1;
open s_list; # 打开游标
# 将游标中的值赋给定义好的变量,实现for循环的要点
fetch s_list into temp_id;
while flag <> 1 do
INSERT INTO app_user`(app_id,user_id,user_source) VALUES ('2c953719-7bce7dc0-017b-ce827d26', temp_id, 3);
fetch s_list into temp_id;
end while;
close s_list; # 关闭游标
end
//
delimiter ; # 重新定义;为一句sql的结束标志
call nelsonTest(); # 调用
show procedure status;