接下来的两篇文章我们将会介绍 MySQL 存储过程和函数。本篇主要介绍它们的概念和管理,下一篇将会讨论如何编写存储过程和函数来实现业务需求。
31.1 存储过程简介
MySQL 存储过程(Stored procedure)是一种存储在数据库中的程序。它可以包含多个 SQL 语句,提供许多过程语言的功能,例如变量定义、条件语句、循环语句、游标以及异常处理等。存储过程没有返回值,但是它可以通过输出参数实现数据的返回,同时还可以产生一个查询结果返回到客户端。
在数据库中创建存储过程之后,应用程序或其他存储过程可以通过名称对其进行重复调用。
在介绍存储过程的管理之前,我们还需要了解一下它的优缺点,存储过程的主要优点包括:
- 实现代码的重用和集中管理。存储过程存储在数据库中,可以在被重复调用,不同的应用可以共享存储过程;
- 实现业务的封装和隔离。应用程序通过接口访问存储过程;当业务发生变化时,只需要修改存储过程的逻辑,对应用程序毫无影响;
- 减少了应用与数据库之间的网络流量。调用存