存储过程和函数

2020-08-15  本文已影响0人  魔芋辣椒

存储结构一般用来插入更新数据
函数用来查询

一、 创建存储结构

DELIMITER 符号x //设置结束符
--------------------------------------------------------

CREATE PROCEDURE  存储过程名(参数列表)
BEGIN
              存储过程体;
END 符号x

--------------------------------------------------------
CALL 存储过程名 符号x //调用存储过程

参数别表填写规则
IN 名字 类型
OUT 名字 类型

案例

DELIMITER $

create procedure boy(IN girl varchar(20),out bname varchar(20),out cp int)
begin
        select bo.boyname, bo.usrcp into bname,cp
        from boys bo
        inner join beauty b on bo.boyid=b.boyid
        where girl=b.name;
END $

call(“小昭”,@bname,@cp)$
select @bname,@cp$

二、删除,查看存储结构

drop procedure  名字

show create procedure 名字

三、函数创建

create function 函数名( 参数 类型 ) returns 返回类型
begin
          函数体
end
//调用
select 函数名(参数)

案例

create function my() return int
begin
        declare c int default 0;
        select count(*) into c
        from employees;
        return c;
end

四、流程控制

4.1 分支结构

select if(表达式1,表达式2,表达式3)
//可在任何地方使用


if 条件1 then 语句1;
else if 条件2 then 语句2;
end if;
//应用在begin end 中

4.2 循环结构

[标签:] while 循环条件 do
  循环体;
end while [标签];

//iterate:类似continue
//leave:类似break

案例

create procedure wh(IN ic INT)
begin
          delare i int default 1;
          a:while i  < ic do
              insert into admin(username,'password') values(concat('tom',i),'666');
              if i>20 then leave a;
              end if;
              SET i=i+1;
          end while a;
end $

上一篇 下一篇

猜你喜欢

热点阅读