gpt4 book ai didi

sql-server - 对于更便宜/更快的无写交易 : COMMIT or ROLLBACK?

转载 作者:行者123 更新时间:2023-12-04 13:50:03 27 4
gpt4 key购买 nike

我使用 sql 事务作为 APPLOCKS 和其他并发机制的容器,因此我有时会在各种隔离级别创建事务,这些事务只读取数据而不写入。我相信在这些情况下,从逻辑上讲,COMMIT 和 ROLLBACK 具有相同的结果。

出于性能原因,我想知道服务器执行哪个更便宜/更快?是否需要针对 COMMIT 情况优化的不可避免的簿记和 ROLLBACK 的额外开销,即使没有写入?在任何一种情况下都会释放锁。

如果这无关紧要,那么我就不必在我的 .NET TransactionScope 代码中乱扔不必要的 scope.Complete() 这可能会让我在查看其他代码时犹豫不决 -显然是只读操作。

谢谢!

最佳答案

因为您没有写任何东西,所以您应该使用 Commit,因为它除了关闭事务外还会释放您可能拥有的任何锁。虽然从技术上讲回滚也会做同样的事情,但提交总是比回滚快。

关于sql-server - 对于更便宜/更快的无写交易 : COMMIT or ROLLBACK?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18473280/

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