MySQL 简单的存储过程创建:
create procedure temp_proc()
begin
-- 定义两个变量,注意:这里定义变量有一个坑,变量名不能和SQL语句列名一致,不然报错
declare tid int default 0;
declare tname varchar2(50);
-- 定义一个结束游标的变量 默认false,注意:这里有一个坑,这个定义不能放在定义游标的下面不然报错
declare cur1Stop int default false;
-- 定义游标语句 ,查询t_student表,t_id,t_name
declare cur1 cursor for select t_id, t_name from t_student;
-- 如果结果集为空[found]就设置结束变量为true
declare continue handler for not found set cur1Stop = true;
-- 开启游标
open cur1;
-- 循环,read_loop可以理解为自定义的一个标记,可以随便定义,用来结束指定标记
read_loop: loop
-- 把查询的结果辅助到tid,tname变量中
fetch cur1 into c_new_id, c_old_id;
-- 判断结束变量是否为true,为true就结束循环
if cur1Stop then
leave read_loop;
end if;
-- 写你要执行的SQL,这里我直接输出tid和tname
select tid,tname;
end loop;
-- 关闭游标
close cur1;
end;
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于