在 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 用户变量可用于记住结果,而无需将其存储在客户端的临时变量中。

  • 它们用于存储数据,而无需为其明确分配内存位置。


相关文章