存储过程
存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,存储在数据库中,经过第一次编译后调用不需要再次编译,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。存储过程是数据库中的一个重要对象。
特点
1、能完成较复杂的判断和运算
2、可编程行强,灵活
3、SQL编程的代码可重复使用
4、执行的速度相对快一些
5、减少网络之间的数据传输,节省开销
创建
创建存储过程的语句为 CREATE PROCEDURE,创建存储函数的语句为CREATE FUNCTION。
调用存储过程的语句为CALL。
调用存储函数的形式就像调用MySQL内部函数一样。
create procedure 名称()
begin
.........
end
例如
DROP TABLE IF EXISTS t_student;
CREATE TABLE t_student
(
id INT(11) PRIMARY KEY AUTO_INCREMENT,
NAME VARCHAR(255) NOT NULL,
age INT(11) NOT NULL
);
INSERT INTO t_student VALUES(NULL,‘大师兄’,22),(NULL,‘小师妹’,20);
DROP PROCEDURE IF EXISTS getStuAll;
DELIMITER // – 定义存储过程结束符号为//
CREATE PROCEDURE getStuAll() – 定义输入与输出参数
BEGIN
SELECT * FROM t_student ; – 分号要加
END // – 结束符要加
DELIMITER ; – 重新定义存储过程结束符为分号
SHOW PROCEDURE STATUS LIKE ‘g%’
CALL getStuAll();
查询结果