MySQL 存储过程和存储函数学习
#一。存储过程和存储函数的创建案例
CREATE PROCEDURE myprocedure(in a int,in b int ,OUT c INT)
BEGIN
set c=a+b;
end;
call myprocedure(1,2,@num);#存储过程需要call 来执行 @num 这个是执行的结果,我们通过select 来调用
SELECT @num;
CREATE FUNCTION myfunction(a INT) RETURNS INT(2)#RETURNS 要返回的类型
BEGIN
set a=a+1;
RETURN a;
end;
SELECT myfunction(2),+@num;
#二。变量的使用
#通用公式 :DECLARE 变量名称 变量类型 DEFAULT 默认值 (如果不写DEFAULT,则默认值为NULL)
#给变量赋值用set 或者select ... into 变量名
CREATE FUNCTION myfunction2(a INT) RETURNS INT(2)#RETURNS 要返回的类型
BEGIN
DECLARE b INT DEFAULT 100;
set a=b+1;
RETURN a;
end;
SELECT myfunction2(2);
SELECT myfunction(2),+@num;
CREATE FUNCTION myfunction3(a INT) RETURNS INT(2)
BEGIN
#相同的变量可以写在一起
DECLARE b,c,d INT DEFAULT 100;
set a=b+c+d;
RETURN a;
end;
SELECT myfunction3(2);