mysql 储存过程

Posted lisqorz

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql 储存过程相关的知识,希望对你有一定的参考价值。

创建过程

create procedure demo(in par int)//in out inout   参数名字 参数类型 
begin
set @a = 123;//会话变量 对当前会话有效,全局的变量
declare a int;//用普通变量要声明类型,只对一个作用域有用
declare a int default 5;//直接声明并赋值
set a = 123;//普通变量
if a = 123 then
end if;
if a = 12345 then
……
else
……
end if;
case a
when 1 then  select xx;
when 2 then select bb;
end case;
while a < 3000 do 
insert into demo(a);
set v = v+1;//条件一定要有自增运算,不然会一直while
end whild;
end;

Loop

loop没有条件, 所以需要用If判断 然后用leave 离开定义的loop标签
loop_label:loop
if xxx then 
leave loop_label;
end if;
end loop;
ITERATE 类型C中的continue;
create procedure error()
begin
declare exit handler for 1216//如果发生1216错误,就执行插入error_tab
insert into  error_tab (xxx);
end;

以上是关于mysql 储存过程的主要内容,如果未能解决你的问题,请参考以下文章

Mysql储存过程1: 设置结束符与储存过程创建

mysql为四个表创建储存过程或者储存函数

创建MYSQL的储存过程

Mysql储存过程4:mysql变量设置

Mysql储存过程2:变量定义与参数传递

mysql 储存过程