在 MySQL 中使用用户定义变量
mysqlmysqli database
让我们了解什么是用户变量以及如何在 MySQL 中使用它们。我们还将看到规则 −
用户变量写为 @var_name。这里,‘var_name’指变量名,由字母数字字符、.、_ 和 $ 组成。
如果用户变量名被引用为字符串或标识符,则可以包含其他字符。
用户定义的变量是特定于会话的。
一个客户端定义的用户变量不能被其他客户端看到或使用。
但唯一的例外是,如果用户可以访问 Performance Schema user_variables_by_thread 表,则该用户可以看到所有会话的所有用户变量。
当该客户端退出时,给定客户端会话的所有变量都会自动释放。
用户变量名不区分大小写。名称的最大长度为 64 个字符。
语法
设置用户定义变量的一种方法是发出 SET 语句。让我们看看如何使用以下命令 − 完成此操作
SET @var_name = expr [, @var_name = expr] ...
使用 SET 时,使用 = 或 := 作为赋值运算符。
分配值
可以从一组有限的数据类型中为用户变量分配值。这些包括整数、十进制、浮点、二进制或非二进制字符串或 NULL 值。
十进制和实数值的赋值不会保留值的精度或小数位。
非允许类型的值将转换为允许类型。
这与用于表列值的强制类型相同。
MySQL 用户变量可用于记住结果,而无需将其存储在客户端的临时变量中。
它们用于存储数据,而无需为其明确分配内存位置。