一、存储过程
1、存储过程的基本概念
存储过程是一组为了完成某项特定功能的SQL语句集,它可以由声明式SQL语句和过程式SQL语句组成,这组语句经过编译后会存储在数据库中,用户只需要通过指定存储过程的名字并给定参数,即可随时调用并执行它,而不必重新编译。
使用存储过程的好处如下:
① 可增强SQL语言的功能和灵活性;
② 良好的封装性;
③ 高性能;
④ 可减少网络流量;
⑤ 存储过程可作为一种安全机制来确保数据库的安全性和数据的完整性。
2、创建存储过程并调用
在MYSQL中服务器处理SQL默认是以分号作为语句的结束标志,然而在创建存储过程中,存储过程体中可能包含多条SQL语句,这些SQL语句如果仍以分号作为语句结束符,那么服务器在处理时会以遇到的第一条SQL语句结尾处的分号作为语句结束符,而不再去处理存储过程体中后面的SQL语句,为了解决这个问题,需要使用DELIMITER命令,这MYSQL语句的结束标志临时修改为其他符号。例如:DELIMITER !!
创建存储过程的语法格式如下:
/*创建存储过程的语法格式*/
CREATE PROCEDURE pro_name([param[,...]]) routine_body
/*其中param的语法格式如下*/
[IN|OUT|INOUT] param_name type
简单示例如下:
/*创建存储过程将emp表中员工编号为888