gpt4 book ai didi

mysql - 如何在Mysql中使用用户定义的@variable作为线程安全

转载 作者:行者123 更新时间:2023-11-29 11:09:34 24 4
gpt4 key购买 nike

当使用 Spring 框架中的相同连接对象访问 mysql 中的 @variable 时。它对于所有用户来说都很常见,因此看起来不是在查询中使用的线程安全变量。如何在mysql中使用@variable替代用户定义的变量。

在同一连接对象中使用线程安全的以下查询的替代查询。

select
@num := (@num + 1) as row_number
from
user u,
(select @num := 0);

最佳答案

包括 (select @num := 0) 会在查询开始时初始化变量。用户定义的变量的范围仅限于单个连接,并且一个连接一次只能运行一个查询,因此这种特定情况是完全“线程安全的”。

但是,这也有点黑客行为。

参见http://dev.mysql.com/doc/refman/5.7/en/user-variables.html

关于mysql - 如何在Mysql中使用用户定义的@variable作为线程安全,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40837832/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com