Articles

External Article

How to Script Dimensions with data build tool (dbt) Macros

In this article, we’ll revisit the dimension models we created. We wrote the entire SQL statement for the dimension by hand, and the dimensions themselves were very rudimentary; they lacked a surrogate key and there were no audit columns (such as insert date and update date). We’ll show you how we can expand the dimensions using Jinja, but also how we can minimize development effort by baking reusable patterns into the Jinja code.

2025-09-03

SQLServerCentral Article

Advanced SQL Server Page Forensics: Detecting Page Splits and Allocations with DBCC PAGE

Page splits are an often-overlooked performance killer in SQL Server. In this article, we take a forensic look at how serial inserts differ from mid-table inserts, revealing why inserting rows out of order causes hidden page splits, increased IO, and fragmentation. Using a wide-column table, we demonstrate both scenarios and decode their impact with page-level analysis.

(1)

You rated this post out of 5. Change rating

2025-09-02 (first published: )

2,510 reads

SQLServerCentral Article

Deprecated but Forgotten: Why SQL Server’s Text, NText, and Image Data Types Still Haunt Your Systems

TEXT, NTEXT, and IMAGE columns have been deprecated for nearly two decades, yet they still silently haunt many SQL Server environments. This article explains their hidden limitations with practical demos and shows why migrating to VARCHAR(MAX), NVARCHAR(MAX), and VARBINARY(MAX) is critical for modern performance, maintainability, and future upgrades.

(4)

You rated this post out of 5. Change rating

2025-09-02 (first published: )

2,411 reads

SQLServerCentral Article

How to Access and Use Azure Key Vault Secrets in an Azure Devops Pipeline

When you run a CI/CD pipeline, you often need confidential values like passwords, authentication tokens, service principal secrets etc. when you want to deploy a certain artefact. You don’t want to store those secrets directly in your pipelines as this might pose a considerable security leak. Instead, you either store them as secret variables, or […]

You rated this post out of 5. Change rating

2025-09-02 (first published: )

1,197 reads

SQLServerCentral Article

How to create your custom GPT SQL Expert

Introduction ChatGPT includes custom GPTs. You can create your own custom GPT. In this article, we will demonstrate how to create a custom GPT expert in SQL Server. Requirements To create your own GPT, you need to use the paid version of ChatGPT. First, go to ChatGPT. Secondly, if you don’t have the paid version, […]

(1)

You rated this post out of 5. Change rating

2025-09-02 (first published: )

4,680 reads

Blogs

Advice I Like: Ranch Rules

By

Leave a gate behind you the way you first found it. – from Excellent...

Fix Slow, Bloated MSDB: Purge Old History And Add Missing Indexes

By

Fix Slow, Bloated MSDB: Purge Old History And Add Missing Indexes ...

Three Ways to Use Snowflake Data in Microsoft Fabric

By

Organizations increasingly want Snowflake and Microsoft Fabric to coexist without duplicating data or fragmenting...

Read the latest Blogs

Forums

25 Years of SQL Server Central

By Steve Jones - SSC Editor

Comments posted to this topic are about the item 25 Years of SQL Server...

The Decoded Value

By Steve Jones - SSC Editor

Comments posted to this topic are about the item The Decoded Value

Deploying SQL Server Developer Edition in Kubernetes: A Cost-Effective Alternative to RDS

By Sujai Krishna

Comments posted to this topic are about the item Deploying SQL Server Developer Edition...

Visit the forum

Question of the Day

The Decoded Value

In SQL Server 2025, what is returned from this code:

DECLARE @message VARCHAR(50) = 'Hello SQL Server 2025!';
DECLARE @encoded VARCHAR(MAX);

SET @encoded = BASE64_ENCODE(CAST(@message AS VARBINARY(1000)));
SELECT BASE64_DECODE(@encoded) 

See possible answers