Upcoming Speaking Engagements

The next few months will be crazy for me. I will be travelling a lot around Europe, speaking about SQL Server topics. Here is where you will find me in the upcoming weeks: May 4: SQLNexus SQLNexus is a new conference in Copenhagen and will be the official launch event in Denmark for SQL Server 2016. I will speak about "Responding to Extended Events in near Real-Time". May 5: SQLBits SQLBits doesn't need to be introduced. [Read More]

Weird Things Happen with Windows Users

This will be no surprise to those who have been working with SQL Server for a long time, but it can be puzzling at first and actually I was a bit confused myself when I stumbled upon this behavior for the first time. SQL Server treats windows users in a special way, a way that could lead us to some interesting observations. First of all, we need a test database and a couple of windows principals to perform our tests: [Read More]

An annoying Bug in the Restore Dialog

Today, thanks to a customer, I discovered one of those annoying little things that can really drive you nuts. Basically, they were trying to restore a backup using the SSMS Restore Database window and they kept getting “No backupset selected to be restored” whenever a backup file was selected. You just had to select a file for restore and click OK… … to be met with an error message in the Restore Database window: [Read More]

SSMS in High-DPI Displays: How to Stop the Madness

I spent the last few weeks travelling a lot compared to my usual routine and I got quickly fed up with bringing my mobile workstation with me. My Dell precision M4600 is a powerhouse, but it’s definitely too big and too heavy for travelling, so I decided it was time to buy a small laptop just for travelling and presenting at SQL Saturdays and events around Europe. After lots of research, I pulled the trigger on a new XPS13. [Read More]

SQL Server Infernals – Circle 6: Environment Pollutors

Don’t tell me that you didn’t see it coming: at some point, Developers end up being put to hell by a DBA! I don’t want to enter the DBA/Developer wars, but some sins committed by Developers really deserve a ticket to the SQL Server hell. In particular, some of those sins are perpetrated when not even a single line of code is written yet and they have to do with the way the development environment is set up. [Read More]

SQL Server Infernals - Circle 5: Inconsistent Baptists

There’s a place in the SQL Server hell where you can find poor souls wandering the paths of their circle, shouting nonsense table names or system-generated constraint names, trying to baptize everything they find on their way in a different manner. They might seem innocuous at a first glance, but beware those damned souls, as they can raise confusion and endanger performance. What they say in Heaven Guided by the Intelligent Designer’s hands, database architects in Heaven always name their tables, columns and all database objects following the rules in the ISO 11179 standard. [Read More]

SQL Server Infernals - Circle 3: Shaky Typers

Choosing the right data type for your columns is first of all a design decision that has tremendous impact on the correctness of the database schema. It is not just about performance or space usage: the data type is the first constraint on your data and it decides what can be persisted in your columns and what is not acceptable. Choosing the wrong data type for your columns is a mistake that might make your life as a DBA look like hell. [Read More]

SQL Server Infernals - Circle 2: Generalizers

Object-Oriented programming taught us that generalizing is a good thing and, whenever possible, we should do it. Complex class hierarchies are a good way of reusing code, hitting the specialized classes only when a special implementation is needed. In the database world, the concept doesn’t play exactly well. What they say in Heaven In Heaven, there is a lookup table for each attribute, no matter how simple and no matter how small is the lookup table. [Read More]

SQL Server Infernals – Circle 1: Undernormalizers

There’s a special place in the SQL Server Hell for those who design their schema without following the Best Practices. In this first episode of SQL Server Infernals, we will explore together the Row of the Poor Schema Designers, also known as “undernormalizers”. What they say in Heaven In Heaven, where all Best Practices are followed and everything runs smoothly while angels sing, they design their databases following the rules of normalization. [Read More]

Native Client Aliases don't like Trailing Spaces

I usually don’t post small things like this, but today I fought with this obnoxious problem long enough to convince me that it deserved a shout out to the community. When you create an alias in the SQL Server Configuration Manager, make sure that the alias name contains no spaces, otherwise it won’t work as you expect. In my case, I had a Reporting Services instance with many data sources pointing to a SQL Server instance (let’s call it MyServer) and I wanted to redirect connections to a different instance using an alias. [Read More]