Want to win a PS4? Go Premium and enter to win our High-Tech Treats giveaway. Enter to Win

x
?
Solved

sql (nolock)

Posted on 2004-09-01
5
Medium Priority
?
4,862 Views
Last Modified: 2012-06-27
I know i shoud use nolock on select queries in sql but shud i do it on views as well
thank you
0
Comment
Question by:yalamanchir
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
5 Comments
 
LVL 6

Expert Comment

by:lausz
ID: 11953444
Is the same in views and selects because in the views you have a select query too.
0
 
LVL 4

Accepted Solution

by:
eclipse2k earned 2000 total points
ID: 11953482
Something i found about it.

"Whenever you create a view with NOLOCK hint, regardless to what isolation or transaction you run the tables data is fetched with the NOLOCK hint. You DONOT need to prefix the NOLOCK while using the View.
 
But when you use NOLOCK while using with the View directly and not having on individual tables, here the NOLOCK hint is applied to all the objects involved in the View. Hence there is an advantage. The application can decide to when to use the NOLOCK hint while querying. I support this mode of working only."

Maybe it helps.
0
 
LVL 15

Expert Comment

by:jdlambert1
ID: 11953516
I don't think you should use NOLOCK on SELECT statements, in views or otherwise. You can get dirty (uncommited/inconsistent) data that way. What are you trying to accomplish?
0
 
LVL 18

Expert Comment

by:ShogunWade
ID: 11953631
"I know i shoud use nolock on select queries ..."   - says who.     You should only use WITH(NOLOCK) if you understand that this is a dirty read and you know the issues and pittfalls.

I use WITH(NOLOCK) heavily on my current project but I know absolutely (due to the nature of the application) that when I issue such a statement my process will be the only process accessing the table and /or I desire dirty reads for monitoring purposes.
0
 
LVL 34

Expert Comment

by:arbert
ID: 11955293
Agree with ShogunWade--totally depends on your application.....We have several tables that we need to be able to update and we don't care if the users get dirty results--we just don't want them blocked by any of our processes--just all depends on whether or not you can afford users to have possibly incorrect information.
0

Featured Post

NFR key for Veeam Backup for Microsoft Office 365

Veeam is happy to provide a free NFR license (for 1 year, up to 10 users). This license allows for the non‑production use of Veeam Backup for Microsoft Office 365 in your home lab without any feature limitations.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article shows gives you an overview on SQL Server 2016 row level security. You will also get to know the usages of row-level-security and how it works
This month, Experts Exchange sat down with resident SQL expert, Jim Horn, for an in-depth look into the makings of a successful career in SQL.
Via a live example, show how to backup a database, simulate a failure backup the tail of the database transaction log and perform the restore.
Via a live example, show how to setup several different housekeeping processes for a SQL Server.

610 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question