deployment

Stairway icons Database Deployments

Defining the Deployment Contract: Stairway to Reliable Database Deployments Level 2

  • Stairway Step

Level 2 formalizes the behavioral guarantees that a changeset must provide in order to be safely deployed and rolled back. It introduces the deployment contract, checkpoint semantics, and the structural scope of Create and Rollback scripts. Data changes are addressed through a dedicated Update mechanism, with clear boundaries and limitations. By the end of this level, a changeset becomes a predictable and well-defined unit that can be reasoned about independently of execution context.

★ ★ ★ ★ ★ ★ ★ ★ ★ ★

You rated this post out of 5. Change rating

2026-05-06

1,285 reads

Stairway icons Database Deployments

Designing Database Changes Before Deployment: Stairway to Reliable Database Deployments Level 1

  • Stairway Step

Stairway to Reliable Database Deployments introduces a progressive approach to managing database changes with clear intent, predictable rollback, and explicit behavioral guarantees. Starting from change design and moving toward execution and coordination in complex environments, the Stairway provides a conceptual framework for deploying database changes safely and consistently, independent of specific tools or automation platforms.

★ ★ ★ ★ ★ ★ ★ ★ ★ ★

(1)

You rated this post out of 5. Change rating

2026-04-15

2,028 reads

External Article

Database Lifecycle Management: Deployment and Release

  • Article

So often, the unexpected delays in delivering database code are more likely to happen after the developers initiate the release process. The necessary checks and tests can turn up surprises: The handover process can expose deficiencies. With good teamwork, planning and forethought, though, the process can be made almost painless.

2016-08-05

4,063 reads

External Article

Database Deployment: The Bits - Agent Jobs and Other Server Objects

  • Article

Databases often need more than just the database objects to run. There may be certain server objects and components, and SQL Agent objects, that are required as well. For an automated deployment, these need to be identified and their build script placed in source control. They then need to be deployed via the pre, or post deployment script. Phil spells out how and why.

2013-05-29

2,424 reads

External Article

Database Deployment Challenges

  • Article

There are a number of challenges that make the deployment task more difficult. Alex reviews the common techniques for deploying new databases and upgrading existing ones, and their flaws, and argues the advantages of an automated, incremental, script-based approach to deployments.

2013-03-18

3,067 reads

Blogs

Architecting Zero Downtime Deployments–Day of Data Boston

By

Here are the resources for my talk at Day of Data Boston. Slides –...

The Book of Redgate:A Prehistory

By

I’ve covered the values in a number of previous posts on the Book of...

Evidence-bound: what AgentDBA will and won’t link

By

When the evidence names the database, it says so. When it doesn’t, it stops....

Read the latest Blogs

Forums

Today's AI

By Steve Jones - SSC Editor

Comments posted to this topic are about the item Today's AI

Split Large Queries in Athena with a Simple Modulo Trick

By Rahul Gupta

Comments posted to this topic are about the item Split Large Queries in Athena...

Finding Trailing Spaces

By Steve Jones - SSC Editor

Comments posted to this topic are about the item Finding Trailing Spaces

Visit the forum

Question of the Day

Finding Trailing Spaces

I have some data in a SQL Server 2025 database. It looks like this for the dbo.Customer table:

CustomerID CustomerName PreferredName
1          Steve        Steve               
2          Andy         Andy               
3          Brian        Brian               
4          Allan        Allan               
5          Devin        Devin               
6          Steve        Steve               
7          Sally        Sally
I want to detect which names have a single trailing space. The CustomerName is a varchar() and the PreferredName is a CHAR(). Does this query detect the problem rows?
SELECT 
       CustomerID,
       CustomerName,
       PreferredName
FROM Customer
WHERE CustomerName <> RTRIM(CustomerName)
OR PreferredName <> RTRIM(PreferredName);

See possible answers