A partner asks for JSON from your XML export. Build the nested shape, decide what an empty order looks like, and avoid the escaped-array surprise.
What a Preview Build Is For, and What It Is Not
Use a SQL Server preview to test specific features and report reproducible issues while keeping production data and recovery paths separate.
AT TIME ZONE Cost: Converting Many Rows Without Burning CPU
Converting a whole column with AT TIME ZONE looks harmless on three rows and hurts on a hundred thousand. Here is the cheaper way to filter a local day.
OPENXML Rowpattern in SQL Server: Search Every Level and Read the Parent
An OPENXML rowpattern decides which XML elements become rows. This post tests absolute paths, a double slash that searches every level, and the ../ column pattern that reads the parent and grandparent. It repeats the result with nodes() and explains the flags value. Every result comes from SQL Server 2025.
Shredding XML in SQL Server: Turn XML Back Into Rows
Shredding XML means turning XML back into rows and columns. This post writes a small table out with FOR XML PATH, reads it back with nodes() and value(), and proves the copy matches the original, NULL included. It also shows two easy mistakes: a path in the wrong case and a missing [1]. Every result comes from SQL Server 2025.
Scalar Functions and Performance
Scalar functions can hide row-by-row work in SQL Server; learn when inlining helps, how to inspect eligibility, and when a set-based rewrite wins.
What Lock Escalation Is and How to Stop It
Understand lock escalation, confirm it with evidence, and reduce its impact through smaller transactions, better access paths, and modern locking.







