第一次需要对语句进行分析和编译,而之后只需传递参数即可
创建存储过程
复合结构即为2条以上语句
不带参数的存储过程
create procedure 【过程名】() 【过程体】;
调用不带参数过程体
call 【过程名】;
带有in类型参数的存储过程
修改定界符(以//为结尾)
create procedure 【过程名】(in 【参数名】【参数类型】) 【过程体】;
调用
call 【过程名】(【实参】);
创建带有in和out类型参数的存储过程
create procedure 【过程名】(in 【参数1】 【参数1类型】, out 【参数2】 【参数2类型】)
-> begin
-> delete from tb1 where id=u_id;
-> select count(id) from tb1 into usernum; //查询结果写入参数2作为输出
-> end
调用
call 【过程名】(【参数1】,@【用于接受参数2数值的变量】);
用@修饰的变量通常是用户变量
查询用户变量