There are four transaction levels in SQL SERVER :-
READ COMMITTED
The shared lock is held for the duration of the transaction, meaning that no other
transactions can change the data at the same time. Other transactions can insert and
modify data in the same table, however, as long as it is not locked by the first transaction.
READ UNCOMMITTED
No shared locks and no exclusive locks are honored. This is the least restrictive isolation level resulting in the best concurrency but the least data integrity.
REPEATABLE READ
This setting disallows dirty and non-repeatable reads. However, even though the locks
are held on read data, new rows can still be inserted in the table, and will subsequently be interpreted by the transaction.
SERIALIZABLE
This is the most restrictive setting holding shared locks on the range of data. This setting does not allow the insertion of new rows in the range that is locked; therefore, no phantomsare allowed.
Following is the syntax for setting transaction level in SQL SERVER.
SET TRANSACTION ISOLATION LEVEL SERIALIZABLE