本文就用一个简单案例来讲讲存储过程究竟是个啥东东。

mysql存储过程写文件 mysql存储过程写法案例_mysql

首先,我们先认识下MySQL存储过程这个概念。

MySQL中每个存储的程序都包含一个由SQL语句组成的主体。该语句可以是由多个用分号(;)字符分割的语句组成的复合语句。

接着,我们来看看其语法格式:

CREATE PROCEDURE PROCNAME(参数1 参数类型,参数2 参数类型,……)
BEGIN
	--statement sql;
END

最后,当然是要自己上手实操了,否则就像不下水是永远学不会游泳是一个道路。

-- 查询一个用户信息
DROP PROCEDURE IF EXISTS PROC_QUERY_USER; #如果存在该存储过程则删除
CREATE PROCEDURE PROC_QUERY_USER(name VARCHAR(20))
BEGIN
	SELECT name, age FROM test_user WHERE name = t_name;
END// #结束定义语句

mysql存储过程写文件 mysql存储过程写法案例_SQL_02


下面我们执行下该过程:

mysql存储过程写文件 mysql存储过程写法案例_mysql_03


存储过程的好处:

  1. 由于数据库执行动作时,是先编译后执行的。然而存储过程是一个编译过的代码块,所以执行效率要比T-SQL语句高。
  2. 一个存储过程在程序在网络中交互时可以替代大堆的T-SQL语句,所以也能降低网络的通信量,提高通信速率。
  3. 通过存储过程能够使没有权限的用户在控制之下间接地存取数据库,从而确保数据的安全。

小结: 总之存储过程是好东西,在做项目时属于必备利器。