Press "Enter" to skip to content

Day: August 17, 2026

The Perfect Trick to Speed Up Databases

Louis Davidson becomes a cracker jack developer:

This week, I want to sell you on two ideas. First, that you can make any query faster with:

  • Zero hardware changes
  • Zero index changes
  • Zero structure
  • Just a few simple character changes in every one of your queries

This change I will guarantee will make your queries screamingly faster. Never will your customer’s wait on query results again. You will have no blocking, no latch waits, no waiting whatsoever.

He probably should sell this as a training course, along with its administrator equivalent: databases hate date, and you can’t have data problems if you don’t have any data.

Leave a Comment

Displaying Detail Rows Expression Results in Power BI

Chris Webb works around a limitation:

In last week’s post I mentioned that while Power BI reports (unlike Excel PivotTables) do not support the Detail Rows Expression feature, it is possible to partially work around this limitation by using the paginated report visual. In this post I’ll show you how I was able to do this and what is and isn’t possible.

Click through to see how. I’m unclear as to whether this also applies to Power BI Report Server, though my default expectation is “No, it does not apply, because nothing new ever applies for Power BI Report Server, because Power BI Report Server users don’t deserve nice things.” But that’s just because of years of experience in not having nice things with PBIRS, not any specific information.

Leave a Comment

Blocking Database Project Deployment on Data Loss

Jerry Nixon flips a switch:

This important feature shows up in a few places. This article discusses its role in Database Projects and in SQL Server Management Studio (SSMS); it defaults to true in both. This simple setting evaluates the delta between your desired schema and your actual schema and calculates if applying your desired schema would result in data loss. If the answer is “yes,” it stops.

An easy example is dropping a table or column. Doing so would clearly lose data. Another, perhaps less obvious, is reducing the range of a column’s data type, like from INT to TINYINT, where any existing value under zero or over 255 could be lost. These evaluations are done by the engine when BlockOnPossibleDataLoss is set to True and, as a result, you can trust that data in your database is not accidentally destroyed by publishing a schema.

The tricky part becomes dealing with database changes when there will be data loss. For that scenario, I’m not sure the database project approach offers anything significant over writing your own database change scripts.

Leave a Comment

Building a SQL Server Estate Summary from Get-SqlSafe Reporting

Andreas Wolter digs into an environment and builds a report:

Have you ever needed to understand an unfamiliar SQL Server estate quickly? Perhaps you inherited an environment, started working with a new customer, or discovered that the existing server inventory is no longer trustworthy.

In the previous article, Running Get-SqlSafe at Scale Across a SQL Server Estate, I showed how to run Get-SqlSafe across a list of SQL Server instances.

Each report contains a System Overview section. I originally added this section to provide context for the security findings, but it also provides useful estate information such as the SQL Server version, build number, edition, and selected usage indicators.

Click through to see how.

Leave a Comment