程序员小威

导航

聊聊存储过程

1.首先来创建一个存储过程
(1),先要把mysql中的结束符号设置为||
        delimiter ||
(2),创建一个简单的存储过程
        //in param int:in表示这是一个输入参数,param表示参数的名字,int表示参数的类型
        create procedure proc(in param int)
        begin
        select * from zzm where id = param;
        select * from test_a where Aid = param;
        end||
(3),调用一个存储过程:
        call proc(3)||
(4),删除一个存储过程
        drop procedure if exists proc||
        

2.declare局部变量的使用:
    create procedure proc1(in zid int)
    begin
    declare a int;
    declare b varchar(255);
    select id,name into a,b from zzm where id = zid;
    select a,b;
    end||

3.流程控制语句
    create procedure proc2(in type int)
    begin
        if type=1 then select id from zzm;
        else select name from zzm;
        end if;
    end||

4.循环语句的控制
(1),创建一个存储过程
    create procedure proc3(num int)
    begin
    myloop:loop
    set num=num+1;
    if(num>10) then leave myloop;
    end if;
    end loop;
    set @i=num;
    end||
(2),调用该存储过程
    call proc3(0)||
(3),查看结果
    select @i||
    
5,对于out参数的使用:
CREATE PROCEDURE sp_add(a int, b int,out c int)
begin

 set c=a+ b;

end;
调用过程:
call sp_add (1,2,@a);
select @a;

posted on 2011-12-21 16:37  程序员小威  阅读(126)  评论(0)    收藏  举报