特点
封装、复用。
可以接收参数,也可以返回数据。
减少网络交互,效率提升。
创建存储过程
创建语法
CREATE PROCEDURE 存储过程名称[(参数列表)]
BEGIN
-- SQL语句,可以是一条和多条SQL语句;
END;
例子:统计学生人数总数的存储过程
CREATE PROCEDURE COUNT_STU()
BEGIN
select count(*) FROM table_stu;
END;
调用存储过程
调用语法
CALL 存储过程名称([参数])
例子:调用统计学生总数存储过程
call COUNT_STU();
查看储存过程
方式一:
select * FROM INFORMATION_SCHEMA.ROUTINES where ROUTINE_SCHEMA = '存储过程名称';
例子:
select * FROM INFORMATION_SCHEMA.ROUTINES where ROUTINE_SCHEMA = 'COUNT_STU';
方式二:注意存储过程名称直接写即可,不需要用单引号''包裹
show create procedure 存储过程名称;
例子:
show create procedure COUNT_STU;
删除存储过程
语法
DROP PROCEDURE [IF EXISTS] 存储过程名称;
MySQL自定义SQL结束符
将 $$ 设置为SQL结束符
delimiter $$
例子:在命令行中执行创建存储过程的时候将结束符改为$$,这样子可以解决当SQL执行到第三行的时候遇到 ; 系统认为是SQL结束导致的语法错误问题。
CREATE PROCEDURE COUNT_STU()
BEGIN
select count(*) FROM table_stu;
END$$
注意:转载请携带文章源地址