存储过程的概念
存储过程是一组为了完成特定功能的SQL语句集合。类似于于其他编程语言中的函数,定义一个函数方法,可以随时起到传参调用的功能。
存储过程的优点
- 执行一次后,会将生成的二进制代码驻留缓冲区,提高执行效率。
- SQL语句加上控制语句的集合,灵活性高。
- 在服务器端存储,客户端调用时,降低网络负载。
- 可多次重复被调用,可随时修改,不影响客户端调用。
- 可完成所有的数据库操作,也可控制数据库的信息访问权限。
存储过程的管理
创建存储过程
delimiter $$ create procedure proc() begin select * from infor; end$$ delimiter;
调用存储的过程 call proc;
查看存储的过程
show create procedure proc;
存储过程的删除
drop procedure if exists 存储名;
存储过程的参数应用
- IN 输入参数: 表示调用者向过程传入值。(传入值可以是字面量或变量)
- OUT 输出参数: 表示过程向调用者传出值。(可以返回多个值)(传出值只能是变量)
- INOUT 输入输出参数: 既表示调用者向过程传入值,又表示过程向调用者传出值。(值只能是变量。
传入参数的存储过程:
delimiter $$ create procedure proc(in uname char (20) begin select * from where name=uname end $$ dellimiter ;
调用参数的存储过程
call proc(张三);
存储过程的控制语句
if 条件判断语句
where 循环条件语句;