Chapter 11. Continuous database integration


This chapter covers

  • The basics of database CI
  • How Visual Studio helps you maintain the database
  • Database-level testing

We’ve spent the last 10 chapters discussing various parts of the continuous integration process. All these parts involve the source code, assemblies, or the actual application. But one part of CI is often overlooked and is just as important as the code and application. We’re talking about dealing with the database.

In this chapter, you’ll use Microsoft SQL Server. Even though the Northwind sample database no longer ships with SQL Server, you’ll use it because it’s well understood and has almost everything needed for the examples.


All SQL Server sample databases are available via download from various Microsoft websites. You can find the Northwind database at

You can use many tools for database maintenance. We’ll look at some of them, including SQL Server Management Studio (SSMS), the open source tool RoundhousE, and Visual Studio. We won’t look at higher-end solutions such as those from Red Gate that provide tools for dependency tracking, documentation, data and schema comparisons, and so on, but we highly recommend that you evaluate these tools to see if they fit your database maintenance needs and budget.

We’ll get into the tools in a moment, right after we define continuous database integration and discuss some best practices.

11.1. What is continuous database integration?

11.2. Rolling your own continuous database integration

11.3. Continuous database maintenance with RoundhousE

11.4. Continuous database maintenance with Visual Studio

11.5. Summary