gpt4 book ai didi

mysql - MySql 是否自动锁定行还是我需要添加 "lock in share mode"?

转载 作者:行者123 更新时间:2023-11-29 14:10:18 25 4
gpt4 key购买 nike

我们是初学者,我们的 Java 软件使用 select * 等从数据库获取查询。

我的问题是我们是否需要在共享模式下添加锁和“FOR UPDATE”来强制执行锁,或者表锁和行锁是自动的吗?

我们有一个表,我们想要强制并发,我可以将 LOCK TABLE 添加到我需要锁定的表中,然后更新值,然后解锁它吗?

最佳答案

我认为根据您对我的评论的回答,您确实不必担心手动处理表锁。 InnoDB 支持行级锁定,并且启用自动提交(默认情况下),所有单独的查询实际上都以事务方式处理。

现在,如果您有多个 SQL 查询需要作为单个事务处理(即更新一个表,然后更新另一个表 - 要么都成功,要么都回滚),那么您需要专门启动一个事务,并且要么执行临时查询后提交或回滚。

如果需要更改事务隔离级别(默认为“REPEATABLE READ1”),还可以使用SET TRANSACTION语句。

有关更多信息,请查看MySQL Documentation

关于mysql - MySql 是否自动锁定行还是我需要添加 "lock in share mode"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13595788/

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