The query optimizer sat down for twenty minutes and answered for itself. Why it ignored your index, why one procedure gets a plan built for the wrong caller, what it does when it cannot see your value, and the moment its own plan admits it stopped looking.
The SQL Advisor: Seven Answers, All Measured
The SQL Advisor answers seven letters with measurements instead of opinions. Table variables, what each index costs on insert, shrinking after a big delete, SELECT star, ORDER BY in a view, heaps, and whether the order of your WHERE predicates matters.
Know Your Wait Types: Six Profiles, All Induced
I caused six wait types on purpose, one at a time, and measured each one for a single session. What each is blamed for, what it actually means, and the numbers it produced on SQL Server 2025. Wait types are the most misread figures in the product.
The Migration of a Row: Tagged, Followed, Found Again
I followed the migration of a row through SQL Server 2025, from the first write to the grave. The log gets there before the table. The delete does not erase anything. And when the table is empty and the ghost is gone, the statistics histogram still names the row in full.
UPDATE Without WHERE Clause: The Day Everyone Got a Raise
An UPDATE without WHERE clause changed 8,432 salaries. When ROLLBACK can help, and how to check the affected row count before COMMIT.
SQL Server Deadlock: Build One With Your Own Hands
A SQL Server deadlock occurs when sessions form a cycle of dependencies and none can continue. This example lets you create the cycle, inspect it, and remove it.
Holiday Change Freeze Checklist for SQL Server: What to Verify First
Use a change freeze checklist for SQL Server to verify backups, integrity checks, disk headroom, Agent jobs, and serious errors.






