Find implicit conversions in SQL Server plans, compare parameter and column types, and fix type contracts without losing Unicode data.
Catch-All Queries and Optional Parameter Plan Optimization in SQL Server 2025
Compare catch-all queries with recompilation, parameterized dynamic SQL, and SQL Server 2025 optional parameter plan optimization.
Index Size Estimate: Sizing an Index Before You Create It
Before you build an index, estimate its size and say what you assumed. Then check the guess against real pages on a copy.
Clear the Plan Cache for a Single Database in SQL Server
To clear the plan cache for one database, use ALTER DATABASE SCOPED CONFIGURATION CLEAR PROCEDURE_CACHE in that database. This post tests it on two small databases, compares it with DBCC FLUSHPROCINDB and with freeing a single plan, and explains why DBCC FREEPROCCACHE is a bad habit.
Reduce IO Waits in SQL Server: Read the Waits First
To reduce IO waits in SQL Server, first name the wait. This post explains the main IO wait types and measures two of them for a single session on a demo database. It then shows how to check file latency and which fix matches each wait.
Finding the Plan That Changed: Query Store Plan History
Read Query Store plan history, compare duration by interval, find plan changes, and review a temporary force with an exit plan.
The Ascending Key Problem: Estimates for Today’s New Rows
Diagnose ascending key estimates with histogram boundaries, modification counts, and controlled comparisons before updating statistics.







