一,概念
在大型的关系型数据库当中,一组为了完成特定功能的sql语句集,存储在数据库中,只需要经过一次编译,再次调用不需要编译,用户只需要指定存储过程的名字并给定参数就可以执行。(MySQL的存储过程从5.0开始)
二,语法
create procedure 存储过程名(参数)
begin
sql语句....
end;
注:由于sql语句的结尾符薇分号,而存储过程的end后结尾符也为分号,所以需要更改数据库的结尾符,将分号替换为其余字符。
MySQL当中修改结尾符的语句为:delimiter 指定符号
三,示例
1.不带参数的存储过程
create procedure pro_a
begin
selecte * from student;
end #(指定结束符为#)
2.带参数的存储过程
create procedure pro_a()
begin
select * from t_man;
selecte * from student where sid >1111;
select * from t_dept
end #(指定结束符为#)
四,执行存储过程
语法:call 存储过程名(实参);
传递参数的方法有三类:in