(-1)写在前面
这篇文章只是简要的叙述了mysql存储过程编写的基本概念。
我使用的mysql版本是5.7.9-log。
参照<<深入浅出MySQL>>。
(0) delimiter //
delimiter //中的//可以指定为别的符号,比如delimiter @@,改变语句的结束的标识。
因为在存储过程中用到了;,不改变默认语句结束.标识将会报错。
创建完存储过程后别忘了自己更改过默认结束标识哦!
(1)存储过程的创建
在mysql命令行工具输入如下代码,当然你也可以在可视化工具中使用,不过建议使用命令行。
mysql> delimiter //
mysql> create procedure fine()
-> begin
-> set @x = 1;
-> end //
Query OK, 0 rows affected (0.00 sec)
(2) 存储过程的调
mysql> call fine() //
Query OK, 0 rows affected (0.00 sec)
查看执行结果:
mysql> select @x//
+------+
| @x |
+------+
| 1 |
+------+
1 row in set (0.00 sec)
(3)查看存储过程
a.查看存储过程的定义
show create procedure fine /G
/G便于查看结果
定义:如何创建存储过程。
b.查看存储过程的状态
show procedure status like ‘fine‘ \G
或者使用use information_schema切换数据库
select * from routines where routine_name = ‘fine‘ \G
状态:已存在的存储过程的状态。
information_schema是mysql自带的数据库。