17、SQL Server 事务策略规划全解析

SQL Server 事务策略规划全解析

1. 现有事务隔离级别的并发效应总结

在深入探讨之前,先回顾一下各隔离级别可能出现的并发副作用,具体内容如下表所示:
| 隔离级别 | 脏读 | 不一致分析 | 幻读 |
| — | — | — | — |
| Read Uncommitted | 是 | 是 | 是 |
| Read Committed | 否 | 是 | 是 |
| Read Committed Snapshot (单语句) | 否 | 是 | 是 |
| Repeatable Read | 否 | 否 | 是 |
| Snapshot | 否 | 否 | 否 |
| Serializable | 否 | 否 | 否 |

2. 设计锁定粒度级别

在 SQL Server 中,有多种方式可自定义锁定粒度级别。除了使用事务隔离级别,还能借助锁定提示和索引锁定行为定制来实现。

2.1 使用锁定提示

“提示”并非只是建议,它可“强制”查询优化器按指定方式运行。不过,由于查询优化器在多数情况下表现出色,使用提示时需谨慎,要先测试其是否真能提升查询性能。在以下情形中,锁定提示可能会发挥重要作用:
- 提升性能。
- 比使用隔离级别更精细地控制锁定粒度。
- 降低特定查询的隔离级别,避免锁定问题。

从语法角度看,提示可分为连接提示、查询提示和表提示;从功能角度,可分为锁定提示、连接提示、索引提示、编译提示、并行提示等。这里主要关注锁定提示,它能比隔离级别更精细地控制查询优化器的锁定行为,但只有在必要时才应干

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值