存储过程的概念
完成特定功能的sql语句的集合,把定义好的sql集合在一个特定的sql的函数当中,每次执行调用函数即可。还可以实现传参的调用。
存储过程的作用
1.执行速度比sql语句执行速度更快,执行效率更高。
2.客户端可以随时调用发放,也可以随后修改。
3.可以对数据库做任何操作
存储过程的语法
delimiter 表示开始和结束的语法 $$标志位,可以自定义,不要用汉字、数字、特殊字符做开头
格式:
delimiter $$
create procedure test1 ()
begin
select * from infol;
end $$
delimiter;
show procedure status where db='xy102'; 查询当前库的存储过程
show procedure status like '%test%'; 查询当前库的存储过程 (引号里面是存储过程的名称)
call test1; 执行存储过程
存储过程传参
in 传入参数,调用者向存储过程传入值
out 输出参数,存储过程向调用者传出值,可以是多个值
inout 输入输出,既可以表示存储过程向调用者传出值,也可以表示用户向存储过程传入值
in传入参数


备注:uname 自定义 传参CK=uname ,展示name=CK的行
out 输出参数

引用输出参数
练习
结果

输入和输出参数

传入

传出

结果

练习


结果输入185 输出是195

存储过程的控制语句
结果
练习
结果

declare 声明变量
a定义了10 所以输入多少都是110