What are Isolation Levels in SQL Server ?
Transactions specify an isolation level that defines the degree to which one transaction must be isolated from resource or data modifications made by other transactions. Isolation levels are described in terms of which concurrency side-effects, such as dirty reads or phantom reads, are allowed.
Transaction isolation levels control the following...
- Whether locks are taken when data is read, and what type of locks are requested.
- How long the read locks are held.
- Whether a read operation referencing rows modified by another transaction blocks until the exclusive lock on the row are freed, retrieves the committed version of the row that existed at the time the statement or transaction started, and reads the uncommitted data modification.