When does SQL Server think YYYY-DD-MM is a valid date?
In this tip, I talk about cases where SQL Server will interpret YYYY-MM-DD as YYYY-DD-MM, which is less than optimal.
In this tip, I talk about cases where SQL Server will interpret YYYY-MM-DD as YYYY-DD-MM, which is less than optimal.
I talk about one scenario where the system table sys.sysprocesses
almost led us down the wrong path.
An index of over a decade's worth of posts and videos involving bad habits and best practices in SQL Server.
After seeing this question pop up on forums multiple times, I wrote a quick tip about enforcing unique constraints where order doesn't matter.
After a question on #sqlhelp, I dug into what could be making sys.partitions slow, and how they might get the required information in a more efficient way.
A security fix for an elevation of privilege issue has been released for all supported versions of SQL Server.
I explain a recent case where sp_prepare came in handy: trying to validate a plan guide's impact.
I recently came across an interesting issue with CHECKDB snapshots, as well as a bit of information missing from the documentation.
More background on ParamParser, some recent changes, and several syntax examples.
Rob Volk asks us to share our favorite analogies that help explain database-related concepts to less technical folk.
SQL Server 2019 Cumulative Update #8 is available, with 74 enhancements. The build number is 15.0.4073.23.
I've made the GitHub repository for ParamParser public; here is some more background behind this project.
SQL Server 2016 SP2 Cumulative Update #15 is available, with 21 enhancements. The build number is 13.0.5850.14.
I've started a new project to parse default values from stored procedures and functions.
If you ever use sys.sp_columns
as shorthand for catalog views, please don't, and I'll tell you why.
Whether you love or fear new PC builds, it's not every day a Mac person builds a Windows PC. See the parts I chose and how much more economical this option can be.
SQL Server 2019 Cumulative Update #7 is available, with 56 enhancements. The build number is 15.0.4063.15.
There is a very common anti-pattern you should avoid, involving updating a row if it exists and inserting it if it doesn't. See how to avoid race conditions and deadlocks.
Altering a fixed-width column on a large table can often mean either a lot of planning or a lot of downtime, but in some scenarios there may be an easy out.
We had a case where we increased a varchar column's size, ONLINE, but it caused significant downstream effects. See why.
There are some limitations with STRING_SPLIT that could be overcome, but the cleanest solution might be to add a new function altogether.