Topic: Database - Isolation Levels
Share/Save/Bookmark
C# DATABASE - ISOLATION LEVELS
 
ISOLATIONLEVEL     BEHAVIOR
ReadUncommitted    Does not lock the records being read. This means that an uncommitted change can be read and then rolled back
                   by another client, resulting in a local copy of a record that is not consistent with what is stored in the
                   database. This is called a "DIRTY READ" because the data is inconsistent.
Chaos              Behaves the same way as "ReadUncommitted", but checks the isolation level of other pending transactions
                   during a write operation so that transactions with more restrictive isolation levels are not over-written
ReadCommitted      Locks the records being read adn immediately frees the lock as soon as the records have been read. This
                   prevents any changes from being read before they are committed, but it does not prevent records from being
                   added, deleted, or changed by other clients during the transaction. This is the defulat isolation level
RepeatableRead     Locks the records being read and keeps the lock until the transaction completes. This ensures that the data
                   being read does not change during the transaction.
Serializable       Locks the entire data set being read and keeps the lock until the transaction completes. This ensures that the
                   data and its order within the database do not change during the transaction.