So, like, what is a byte?
A friend of mine in the filmmaking business, who is exceedingly bright but has never worked with SQL Server before, was reading through the first five posts of this Database Fundamentals series, and asked a great question:…
A friend of mine in the filmmaking business, who is exceedingly bright but has never worked with SQL Server before, was reading through the first five posts of this Database Fundamentals series, and asked a great question:…
(This post was last updated on 1 August 2022.) Everything changed for SQL Server Standard Edition on 16 November 2016, and how memory limits work. On that day, a slew of Enterprise Edition features made…
In my November 2015 post, An Introduction to Temporal Tables in SQL Server 2016 using a DeLorean, I wrote: The HIDDEN property is optional and will hide these columns from a standard SELECT statement for…
Last Wednesday on Twitter, Abayomi Obawomiye (@SQLAmerica) wrote: https://twitter.com/SQLAmerica/status/819252286274695168 I just met someone with the last name NULL today. I really want to ask if they had issues with the last name but worried might…
I’m a huge fan of Temporal Tables in SQL Server 2016. I first wrote about them, in a four-part series in November 2015, before SQL Server was even released. I don’t always get this excited…
Conventional wisdom tells us that when Microsoft releases a new version of any server product, we should wait until Service Pack 1 before deploying it to production. This hasn’t been true for a while now, since Microsoft…
In the latest Microsoft Azure newsletter I received last week was this most excellent news: Azure SQL Database Temporal Tables generally available Temporal Tables let customers track the full history of data changes in Azure…
Many smart people have spoken about clustering keys and primary keys before, so here’s a less smart take on the topic. Let’s define some things first: Clustered Index – the column (or columns) by which…
My friend Jason asked me about his MySQL database export file last week, whether it was sufficient to create a new database. I replied saying that he would have to set up the database separately,…
Update: Paul Randal told me I had made a mistake in my post. The correction is below. On Wednesday last week, Kenneth Fisher (b | t) asked: “Is DBCC SHRINKFILE (filename, EMPTYFILE) fully logged?” Is…
This is part two of a short series of posts about how I assign efficient data types when designing a new table or database. Use less space with BIGINT Last week, I spoke about a…
This is the first in a short series of posts about how I assign efficient data types when designing a new table or database. Use less space with DATETIME2 We all know that the DATETIME column…
Last edited on 18 December 2019. This is the final part of my Temporal Table series. You can read parts one, two and three here. Last week I demonstrated how to modify temporal tables in…
This is part three of the Temporal Tables series. You can read parts one and two here. Last week I demonstrated how temporal tables in SQL Server 2016 work. If you have implemented a history…
(This is a more technical post than last week. If you are not familiar with SQL Server internals, I will not be upset if you skip it. Otherwise, let’s dive in.) Last week I introduced…