316769c3685aa9694.png (256.64 KB, 下载次数: 45)
2026-3-25 12:45 上传
4331569c368cacce58.png (101.17 KB, 下载次数: 43)
2026-3-25 12:47 上传
SQL Server 支持两种并发模型来保证事务的 ACID 属性:
- 悲观并发(Pessimistic Concurrency)假设冲突始终会发生,通过锁定数据来确保正确性和并发性。
- 乐观并发(Optimistic Concurrency)假设不会发生冲突,在碰到冲突再进行处理。
在乐观并发模型中,用户读数据时不锁定数据。在执行更新时,系统进行检查,查看另一个用户读过数据后是否更改了数据。如果另一个用户更改了数据,则产生一个错误,接收错误信息的用户将回滚事务。该模型主要用在数据争夺少的环境中,以及锁定数据的成本超过回滚事务的成本时。SQL Server 提供了 5 中隔离级别(Isolation Level),在处理多用户并发时可以支持不同的并发模型。
- Read Uncommitted:仅支持悲观并发;
- Repeatable Read:仅支持悲观并发;
- Serializable:仅支持悲观并发;
- Snapshot: 支持乐观并发;
- Read Committed:默认隔离级别,依据配置既可支持悲观并发也可支持乐观并发。
| 欢迎光临 重庆思庄Oracle、KingBase、PostgreSQL、Redhat认证学习论坛 (http://bbs.cqsztech.com/) | Powered by Discuz! X3.2 |