MySQL 8.0 参考手册  / 第 13 章 SQL 语句  / 13.6 复合语句语法  /  13.6.4 存储程序中的变量

13.6.4 存储程序中的变量

系统变量和用户定义变量可以在存储程序中使用,就像它们可以在存储程序上下文之外使用一样。此外,存储程序可用于DECLARE定义局部变量,存储例程(过程和函数)可声明为采用在例程与其调用者之间传递值的参数。

有关局部变量范围以及 MySQL 如何解析不明确名称的信息,请参阅 第 13.6.4.2 节,“局部变量范围和解析”

不允许将值分配DEFAULT 给存储过程或函数参数或存储程序局部变量(例如使用 语句)。在 MySQL 5.7 中,这会导致语法错误。 SET var_name = DEFAULT