【MySQL】存储过程
概念
存储过程和函数可以理解为一段sql的集合,他们被事先编译好并且存储在数据库中。在pascal语言中,是有过程和函数的区别的,过程可以理解为没有返回值得函数。不过在C语言总,则没有过程这个概念,统一为函数
创建存储过程
create procedure 存储过程名(参数列表)
begin
存储过程体
end
create procedure user_data()
begin
select * from table_a;
end;
调用存储过程
call user_data();
执行结果:
这就是一个简单的存储过程
参数类型
在上边创建存储过程中,我们知道在user_data()里边可以携带参数的
解释参数
1.in 表示用来输入
2.out 表示用来输出
3.inout 可以用来输入也可以用来输出
携带参数的存储过程
先使用命令删除我们之前创建的user_data的存储过程
drop procedure user_data;
创建在带参数的存储过程
create procedure user_data(in id int)
begin
select * from table_a where id = id;
end
执行带参数的存储过程
还可以直接输出我们需要字段
设置变量
declare kaka varchar(225) default ‘我是咔咔’;
存储过程中的常用数据类型
1.数值类型
int float double decimal(用于钱上)
2.日期类型
timestamp data year
3.字符串
char varchar text