gpt4 book ai didi

mysql - 我们可以在读提交级别进行脏读吗?

转载 作者:行者123 更新时间:2023-11-30 01:12:25 26 4
gpt4 key购买 nike

我对 READ COMMITED 隔离级别有点困惑。如果事务X(启动)读取一行,更改该行并再次读回该行,这是否被视为特定隔离级别的脏读?

最佳答案

无论事务隔离级别如何,事务始终可以读取它所做的更改。这不是脏读。

READ COMMITTED 意味着您的事务将看到其他事务所做的最新提交的更改。

READ UNCOMMITTED 意味着您的事务可以看到其他事务中所做的更改,即使它们尚未提交。这是一个脏读。这确实不太可能是您想要的。

<小时/>

回复您的评论。

假设我有一个书店应用程序。有人试图购买 100 册丹·布朗的最新书。首先,我的应用程序将书籍的库存更新为零,然后尝试验证他们的信用卡。他们的信用卡没有足够的信用额度来支付 100 册这本书的费用,因此被拒绝。然后事务回滚,恢复原来的库存图书数量。

同时,您的应用程序正在监控库存水平,以了解何时重新订购图书。如果您使用 READ UNCOMMITTED,您可以轻松地看到库存减少到零。也就是说,在我的应用程序更新之后但回滚之前。您的应用程序非常高效,它会立即向出版商发送新书的订单。

几天后,你收到了多余的一盒书,但你仍然有旧库存,所以你的书架上没有空间,多余的盒子被留在过道上,直到有人被它绊倒并受伤。 :-(

如果您只使用了 READ COMMITTED,您就不必为某人的脚踝扭伤负责。

关于mysql - 我们可以在读提交级别进行脏读吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19368891/

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