Data-Tier Application


A DAC (Data-Tier Application) allows you to create a package (A DACPAC) that can be used to deploy a database in one unit. A database has to be registered with SQL Server as a DAC in order to create these packages. A DACPAC of a later version can be used to upgrade an existing deployed DAC, where the schema will be upgraded while the data is left in place.
A BACPAC can be created as well, which included data as well and the schema. These could be used to move a database from one server to another.

Several options are available in SSMS to work with DACs.

From a Database => Tasks

1) Extract Data-tier application
Create a DACPAC file

2) Deploy database to SQL Azure
Install a database from SS to SQL Azure – Specify Azure Logon info

3) Export Data-tier application
Create a BACPAC, with the schema definition and data.

4) Register as Data-tier application:
Registers the database definition with SQL Server as a DAC. A database will need to be registered before it can be upgraded.

5) Upgrade Data-tier application
Take an existing DAC and upgrade it to match the parent database

6) Delete Data-tier application
Un-registers the database as a DAC. Does not remove the database.

Databases (right click):

1) Deploy Data-tier application:
Take an existing DACPAC and create a database with the defined schema.

2) Import Data-tier application:
Take an existing BACPAC a create a database with the defined schema and data.