MySql存储过程详解

存储过程

在一些语言中,比如pascal,有 “过程” 和 “函数” 的概念。

  • 过程:封装了若干条语句,调用时,这个封装体集中执行

  • 函数:是一个有返回值的过程

  • 过程:是一个没有返回值的函数

我们将若干条数据封装起来 — 过程

再将过程存储到数据库中 — 存储过程

mysql没有匿名过程(使用后直接丢掉)

创建存储过程

create procedure procedureName()
begin
  sql 语句集
end//

查看已有的存储过程

show procedure status;

调用存储过程

call procedureName();

存储过程是可以变成的,意味着存储结果可以使用变量、表达式、控制结构,那么存储过程可以完成复杂的功能。

引入变量

定义变量的格式: declare 变量名 变量类型 [default 默认值]

传参

while循环:

in, out, inout:

case结构

repeat结构

游标

游标循环:

除了 exit,continue 外,还有一种 undo handler。

undo handler 是出发后,前面的语句进行撤销,但是目前mysql并不支持。

最后更新于

这有帮助吗?