无法回滚MySQL中的用户定义变量

btqmn9zl  于 5个月前  发布在  Mysql
关注(0)|答案(1)|浏览(54)

首先,我将John设置为user-defined variable@name,如下所示:

SET @name = 'John';

字符串
然后,我在一个事务中将David设置为@name,然后回滚,如下所示:

BEGIN;
SET @name = 'David';
ROLLBACK;


但是,@name没有回滚到John,如下所示:

mysql> SELECT @name;
+-------+
| @name |
+-------+
| David |
+-------+


我读了关于transactionuser-defined variables的文档,但我找不到任何相关信息。
那么,如何回滚用户定义的变量?

yzuktlbb

yzuktlbb1#

用户定义的变量只要会话在线就处于活动状态,当您断开连接时,它就会消失。
事务作用域除了设置值之外,不触及它,也不能影响它,而且它不会反转它,因为它被放在它的作用域之外

相关问题