A ROWLOCK hint makes SQL Server lock each row it reads instead of whole pages. This post counts the locks of the same scan with and without the hint, times both versions, shows how an open transaction on a busy server changes the result, and explains how ROWLOCK differs from UPDLOCK.
NOLOCK Without WITH: Table Hint or Table Alias?
NOLOCK without WITH and without parentheses is not a hint, because SQL Server reads it as a table alias. This post proves it with a lock test, shows why the compatibility level doesn’t change it, and gives a query that finds the bad syntax in your code. It ends with the safer ways to write the hint.
BULK INSERT ORDER Hint: Loading Pre-Sorted Files Without a Sort
The ORDER hint does not sort anything. It is a promise about your file, and SQL Server checks it. Here is what happens when you break it.
Plan Guides: Fixing a Query You Cannot Change
Apply plan guides to a parameterized query you cannot edit, validate the guide, confirm plan matching, and compare Query Store hints.
New Cardinality Estimation: What Changed Since 2014
The new cardinality estimation guesses row counts differently from the old one. This post tests both on SQL Server 2025 with one query, shows three switches that choose the model, and gives a safe way to upgrade.
OPTION (FORCE ORDER): When a Join Order Hint Helps and Hurts
Test OPTION (FORCE ORDER) against real join plans, see when fixed table order helps or hurts, and apply a reversible Query Store hint.
UPDLOCK and READPAST for Queue Tables
UPDLOCK and READPAST let SQL Server queue workers claim different rows safely when transactions, retries, and completion rules are designed.







