开发者

SQLServer Transaction Isolation Analogy

开发者 https://www.devze.com 2023-01-12 17:22 出处:网络
Does anyone have a good analogy of SQLServer transaction isolation levels开发者_如何学Python? (SQL2005 upward)The best analogy I\'ve been able to use is Source Code control and building apps.A check o

Does anyone have a good analogy of SQLServer transaction isolation levels开发者_如何学Python? (SQL2005 upward)


The best analogy I've been able to use is Source Code control and building apps. A check out is a lock and a build is a transaction.

I've not written this down before, so the following is just a brief summary of the concept I use. Like any analogy, it will fall apart if you stretch it too far.

Read Committed - the code is checked out (locked) and you cannot build the code (transaction) until the code is checked in.

Read Uncommitted - you can see the code, but you do not know if it is the old version or the updated version. A build may work or may not work depending on if all of the code has been checked in yet.

Repeatable Read - files cannot be checked out while a build is in progress, but files can be added to the project if they do not affect the build.

Serializable - files cannot be checked out or added while the build is in progress; the entire project is in use/checked out (range lock).

Snapshot - the user works with the files labeled as a release, but does not see changes for the next release.

0

精彩评论

暂无评论...
验证码 换一张
取 消