1.什么是存储过程?
一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。
2.存储过程的优点:
1.会使系统运行更加快
2.存储过程是可复用的组件
3.存储过程可以保存
4.存储过程可以移植
3.存储过程的语法:
Create procedure 存储过程名
Begin
里面复合语句
End
4.我们写一个最简单的存储过程
Create procedure pro1()
Begin
select * from teacher;
end
这句话是创建一个叫pro1()的存储过程,作用是查询teacher表的所用信息
那么我们怎么调用存储过程呢?
Call pro1()
我们就可以显示teacher表中的所有信息
5.我们写一个可以输入参数的存储过程
Create procedure pro2(in a int) // int代表输入 a是一个参数, int代表参数的类型
Begin
Set @x=a
End
这样就是可以了
我们调用的时候,我们可以classpro2(122)
然后我们输入 select@x就可以了
6.我们可以做一个输出参数的存储
CREATE PROCEDURE protest6(OUT a INT) //out代表输出
BEGIN
DECLARE b INT; //定义一个局部变量,int代表数的类型
SET b=5; //赋值
SET a=b; //赋值
END
我们先调用存储过程
Call protest6(@q) 里面参数可以随便定义但是不能少@
接着我们写 select@q 我们就可以看见 @q=5
CREATE PROCEDURE protest13()
BEGIN
DECLARE a int DEFAULT 6;
INSERT into fish VALUES (a);
SELECT s from fish END
这里首先你得有一个表叫fish,s是fish表的字段
然后我们调用存储过程call protest13()我们就可以得到你想要查询的数据了。