What is a NOLOCK?
Answers were Sorted based on User's Feedback
Answer / michael
Advantage:
applying nolock in select statement will increase
concurreny and performance in fetching.
Disadvantage:
it does'nt consider the transaction scenario, even if the
transaction is under process not yet commited or rollback
it will fetch the current record
eg
begin tran
insert into tablename
values('1','asdf')
select * from tablename with (nolock)
-- it will display the table with inserted record.
but the transaction is not completed, it can be rollback
so it became dirty read.
| Is This Answer Correct ? | 28 Yes | 2 No |
Answer / naren
Using NOLOCK politely asks SQL Server to ignore locks and
read directly from the tables. This means you completely
circumvent the lock system, which is a major performance
and scalability improvement. However, you also completely
circumvent the lock system, which means your code is living
dangerously. You might read the not-necessarily-valid
uncommitted modifications of a running transaction. This is
a calculated risk.
| Is This Answer Correct ? | 19 Yes | 1 No |
Answer / guest
Do not issue shared locks and do not honor exclusive locks.
When this option is in effect, it is possible to read an
uncommitted transaction or a set of pages that are rolled
back in the middle of a read. Dirty reads are possible. Only
applies to the SELECT statement.
| Is This Answer Correct ? | 16 Yes | 3 No |
What new changes are being made in SQL Server?
How to provide Security for package?
Why do we use stored procedures in sql server?
How to provide default values to function parameters?
Why should one not prefix user stored procedures with ‘sp_’?
What are the main differences between #temp tables and @table variables and which one is preferred?
Define tool Manage Statistics in SQL Server 2000 query ?
What is the difference between OLEDB and ODBC
What will be the value of @@fetch_status if a row that was a part of the cursor resultset has been deleted from the database after the time the stored procedure that opened the cursor was executed?
How do I create an extended event in sql server?
Please tell me some knowledge about Clustering and how to add clustering?
what is denormalization and when would you go for it? : Sql server database administration
Oracle (3259)
SQL Server (4518)
MS Access (429)
MySQL (1402)
Postgre (483)
Sybase (267)
DB Architecture (141)
DB Administration (291)
DB Development (113)
SQL PLSQL (3330)
MongoDB (502)
IBM Informix (50)
Neo4j (82)
InfluxDB (0)
Apache CouchDB (44)
Firebird (5)
Database Management (1411)
Databases AllOther (288)