SQL Server
I continue a series on upsizing an IDENTITY column from INT to BIGINT – this time focusing on workarounds.
I continue a series on upsizing an IDENTITY column from int to bigint, detailing several challenging obstacles.
A recent Visual Studio outage has been largely blamed on the cardinality estimator, but I think the query itself has a share of the blame.
I describe a few different causes for a symptom you might describe as a "runaway" query in SQL Server.
As part of a new series, I take a look at what happens to the structure of a page when an INT column needs to be upsized to a BIGINT.
I compare the performance of different UDFs and raw queries used for splitting and reassembling a delimited string.
I discuss a few counterpoints to a very thorough and useful post on database naming standards.
I revisit an older post about SQL Server pagination to see if any implementation of ColumnStore indexes can improve performance.
A hefty introduction to common table expressions (CTEs).
I've stopped supporting ancient versions of SQL Server, and you should, too. I've cleaned up a lot of old, no longer relevant information.
I highlight a handful of Connect items aimed at improving SQL Server showplan diagnostics and query tuning in general.
I walk through a solution that allows you to achieve some of the benefits of partitioning, without the Enterprise Edition price tag.
I share a few of the queries I use to quickly hone in on changes that have been implemented between SQL Server CTPs.
Tip : Phase out CONTEXT_INFO() in SQL Server 2016 with SESSION_CONTEXT()
I highlight three Connect items that will address some pretty important shortcomings in SQL Server statistics.
I talk about new arguments to SERVERPROPERTY() that make @@VERSION even more obsolete (and changes that make @@VERSION problematic).
I show how to map all of those CONVERT style numbers to specific formats.
I show the most efficient way to return a grouped running MAX or MIN.
In this tip, I dynamically generate msiexec /x
commands to use when add/remove programs fails.
Tip : Search all string columns in all SQL Server databases
I add a few tidbits to follow up on a popular post on default cursor options in SQL Server.
Tip : SQL Server 2016 Row Level Security Limitations, Performance and Troubleshooting
Tip : Understand the Limitations of SQL Server Dynamic Data Masking
I follow up on Always Encrypted posts from T-SQL Tuesday with improved code and more information on performance and space usage.
Tip : Identify Candidate Tables for Stretch Databases
I discuss a couple of potential problems that can occur when you are inconsistent about case sensitivity.
These two things stop me in my tracks whenever I try to install SQL Server on a new VM.
Tip : Prepare for an Upgrade with the SQL Server 2016 Upgrade Advisor
I suggest a different approach to providing more data about service packs and cumulative updates than messing with @@VERSION.
I share the settings file for the dark theme I use for presentations in SQL Server Management Studio (SSMS).
I compare multiple date formatting techniques, demonstrating again that FORMAT() is not worth the convenience.
Tip : Protecting Yourself from SQL Injection in SQL Server – Part 2
Tip : Protecting Yourself from SQL Injection in SQL Server – Part 1
Tip : Convert Existing SQL Server Traces to Extended Events Sessions
A little advice on the use of MDF/LDF files for backups.
I discuss the benefits of explicitly referencing columns in a query.
I follow up on a question from a triggers presentation at SQLBits, addressing the impact of trigger overhead for T-SQL Tuesday.