I was recently asked by a friend, how can we control the level of locking in SQL Server when executing SELECT, UPDATE, INSERT and DELETE statements.
The answer to this question is by using locking hints. Locking hints direct SQL Server to the type of locks to be used. Even though the SQL Server Query Optimizer automatically determines the best locking option when executing a statement of the above kinds, there are cases where a DBA/Database Developer might needs to explicitly control the level of locking.
Available Locking Hints in SQL Server
The available locking hints in SQL Server are the following:
HOLDLOCK
Applies to: SELECT, UPDATE, INSERT, DELETE
NOLOCK
Applies to: SELECT
PAGLOCK
Applies to: SELECT, UPDATE, INSERT, DELETE
READCOMMITTED
Applies to: SELECT, UPDATE, INSERT, DELETE
READPAST
Applies to: SELECT, UPDATE, DELETE
READUNCOMMITTED
Applies to: SELECT
REPEATABLEREAD
Applies to: SELECT, UPDATE, INSERT, DELETE
ROWLOCK
Applies to: SELECT, UPDATE, INSERT, DELETE
SERIALIZABLE
Applies to: SELECT, UPDATE, INSERT, DELETE
TABLOCK
Applies to: SELECT, UPDATE, INSERT, DELETE
TABLOCKX
Applies to: SELECT, UPDATE, INSERT, DELETE
UPDLOCK
Applies to: SELECT, UPDATE, INSERT, DELETE
XLOCK
Applies to: SELECT, UPDATE, INSERT, DELETE
The syntax for using locking hints is very simple. You only have to add the expression with (LOCKING_HINT) just right after you are referencing a database table name (or after a table alias) in your query.
Example of Using Locking Hints in SQL Server
An example of using the NOLOCK locking hint within a SELECT statement is the following:
SELECT column FROM table with (NOLOCK)
The following MSDN Library link fully describes the above locking hints.
Learn More Tips like this – Enroll to the Course!
Check our online course on Udemy titled “Essential SQL Server Administration Tips” (special limited-time discount included in link).
Via the course, you will learn essential hands-on SQL Server Administration tips on SQL Server maintenance, security, performance, integration, error handling and more. Many live demonstrations and downloadable resources included!
Upgrade your Tech Skills – Learn all about Azure SQL Database
Enroll to our online course on Udemy titled “Introduction to Azure SQL Database for Beginners” and get lifetime access to high-quality lessons and hands-on guides about all aspects of Azure SQL Database.
Learn More
Featured Online Courses:
- Introduction to Azure SQL Database for Beginners
- SQL Server 2019: What’s New – New and Enhanced Features
- SQL Server Fundamentals – SQL Database for Beginners
- Essential SQL Server Administration Tips
- Boost SQL Server Database Performance with In-Memory OLTP
- Essential SQL Server Development Tips for SQL Developers
- Working with Python on Windows and SQL Server Databases
- Introduction to Computer Programming for Beginners
- .NET Programming for Beginners – Windows Forms with C#
- Introduction to SQL Server Machine Learning Services
- Entity Framework: Getting Started – Complete Beginners Guide
- How to Import and Export Data in SQL Server Databases
- Learn How to Install and Start Using SQL Server in 30 Mins
- A Guide on How to Start and Monetize a Successful Blog
Read Also:
- Essential SQL Server Development Tips for SQL Developers
- The TempDB System Database in SQL Server
- SQL Server Installation and Setup Best Practices
- The feature you are trying to use is on a network resource that is unavailable
- SQL Server 2016: TempDB Enhancements
- tempdb growth
- Introduction to SQL Server Machine Learning Services
- Essential SQL Server Administration Tips
- What are SQL Server Statistics and Where are they Stored?
- Check all our Weekly Tips!
Subscribe to our newsletter and stay up to date!
Subscribe to our YouTube channel (SQLNetHubTV)!
Like our Facebook Page!
Check our SQL Server Administration articles.
Check out our latest software releases!
Check our eBooks!
Rate this article:
Reference: SQLNetHub.com (https://www.sqlnethub.com)
© SQLNetHub
Artemakis Artemiou is a seasoned Senior Database and AI/Automation Architect with over 20 years of expertise in the IT industry. As a Certified Database, Cloud, and AI professional, he has been recognized as a thought leader, earning the prestigious Microsoft Data Platform MVP title for nine consecutive years (2009-2018). Driven by a passion for simplifying complex topics, Artemakis shares his expertise through articles, online courses, and speaking engagements. He empowers professionals around the globe to excel in Databases, Cloud, AI, Automation, and Software Development. Committed to innovation and education, Artemakis strives to make technology accessible and impactful for everyone.