Answer Posted / arunyadav007
Isolation Level controls the locking and row versioning
behavior of Transact-SQL statements issued by a connection
to SQL Server.
SET TRANSACTION ISOLATION LEVEL
{ READ UNCOMMITTED
| READ COMMITTED
| REPEATABLE READ
| SNAPSHOT
| SERIALIZABLE
}
READ UNCOMMITTED: Specifies that statements can read rows
that have been modified by other transactions but not yet
committed. This option has the same effect as setting
NOLOCK on all tables in all SELECT statements in a
transaction.
READ COMMITTED: Specifies that statements cannot read data
that has been modified but not committed by other
transactions. This prevents dirty reads. When the
READ_COMMITTED_SNAPSHOT database option is ON, you can use
the READCOMMITTEDLOCK table hint to request shared locking
instead of row versioning for individual statements in
transactions running at the READ_COMMITTED isolation level.
REPEATABLE READ: Specifies that statements cannot read data
that has been modified but not yet committed by other
transactions and that no other transactions can modify data
that has been read by the current transaction until the
current transaction completes.
SNAPSHOT: Specifies that data read by any statement in a
transaction will be the transactionally consistent version
of the data that existed at the start of the transaction.
The transaction can only recognize data modifications that
were committed before the start of the transaction. A
transaction running under SNAPSHOT isolation level can view
changes made by that transaction. For example, if the
transaction performs an UPDATE on a table and then issues a
SELECT statement against the same table, the modified data
will be included in the result set.
SERIALIZABLE: Specifies the following:
Statements cannot read data that has been modified but not
yet committed by other transactions.
No other transactions can modify data that has been read by
the current transaction until the current transaction
completes.
Other transactions cannot insert new rows with key values
that would fall in the range of keys read by any statements
in the current transaction until the current transaction
completes.
USE AdventureWorks;
GO
SET TRANSACTION ISOLATION LEVEL REPEATABLE READ;
GO
BEGIN TRANSACTION;
GO
SELECT *
FROM HumanResources.EmployeePayHistory;
GO
SELECT *
FROM HumanResources.Department;
GO
COMMIT TRANSACTION;
GO
Is This Answer Correct ? | 1 Yes | 0 No |
Post New Answer View All Answers
Differentiate between mongodb vs. Sql server?
List the different types of joins?
What is a data source file?
What is Replication?
Explain about the command-line tool SQLCMD?
What is the difference between seek predicate and predicate?
What is difference between views and stored procedures?
What is optimization and its types?
Do you know what is bit data type and whats the information that can be stored inside a bit column?
What is the function of sql server agent windows service?
What are magic tables in sql server?
What are the differences between user defined functions and stored procedures?
What is the primary use of the model database?
How to scale out a federation by Sql statement?
What is difference between line feed ( ) and carriage return ( )?