防止表中的幻读
今天,您需要分析贵行每位客户的数据。由于这些信息非常重要,您考虑对整个 customers 表加锁,使任何人都无法更改该表中的任何内容。这样做可以防止出现幻读。
您准备了一个脚本来选择这些信息,并基于查询结果执行一些数学运算。(本练习不关注这些运算本身。)之后,您还要再次选择相同的数据,以确保没有发生变化。
本练习是课程的一部分
SQL Server 中的事务与错误处理
练习说明
- 设置合适的隔离级别以防止幻读。
- 开始事务。
- 提交事务。
交互式实操练习
通过完成这段示例代码来试试这个练习。
-- Set the appropriate isolation level
___ ___ ___ ___ ___
-- Begin a transaction
___ ___
SELECT * FROM customers;
-- After some mathematical operations, we selected information from the customers table.
SELECT * FROM customers;
-- Commit the transaction
___ ___