MYSQL 存储过程/存储函数

2024-01-08 09:46:21

简而言之,类似于封装函数

特点

基本语法

create peocedure p1()

begin

? ? ? ? select coun(*) from studuent;

end;

call p1();

设置完别忘了把delimiter改回来

变量

系统变量

用户自定义变量

set @myname = 'its';

set @myage := 10;

局部变量

if

参数(IN,OUT,INOUT)

case

create procedure p1(in month int)

begin

? ? ? ? declare result varchar(10);

? ? ? ? case

? ? ? ? ? ? ? ? when month>=1 and month <=3 then

? ? ? ? ? ? ? ? ? ? ? ? set result := '一';

? ? ? ? ? ? ? ? when month>=4 and month <=6 then

? ? ? ? ? ? ? ? ? ? ? ? set result := '二';

? ? ? ? ? ? ? ? when month>=7 and month <=9 then

? ? ? ? ? ? ? ? ? ? ? ? set result := '三';

? ? ? ? ? ? ? ? when month>=10 and month <=12 then

? ? ? ? ? ? ? ? ? ? ? ? set result := '四';

? ? ? ? ? ? ? ? else?

? ? ? ? ? ? ? ? ? ? ? ? set result := '非法';

? ? ? ? end case;

? ? ? ? select concat('您输入的参数为', month, '季度为',result);

end;

循环语句

while

repeat

loop

游标

但是这个有问题,while true是一直循环

可以使用Handler处理

条件处理程序Handler

?刚才的程序多声明一句handler语句就可以成功退出循环

存储函数

存储函数不如存储过程,存储函数必须有返回值?

文章来源:https://blog.csdn.net/weixin_44273624/article/details/135432495
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。