共用方式為


數據層應用程式 (DAC) 概觀

適用於:SQL ServerAzure SQL DatabaseAzure SQL 受控實例Microsoft Fabric 中的 SQL Database

數據層應用程式 (DAC) 是邏輯資料庫實體,可定義與使用者資料庫相關聯的所有 SQL Server 物件,例如數據表、檢視和實例物件,包括登入。 數據層應用程式是整個資料庫模型的獨立單位,可在 .dacpac.bacpac 套件中移植。 數據層應用程式的 工具支援,可讓開發人員和資料庫管理員將 .dacpac.bacpac 檔案套用至新的或現有的資料庫,或從現有的資料庫產生新的檔案。

營運

BACPAC 作業

.bacpac 檔案格式是一個相關的工件,預設會包括資料庫架構和儲存在資料庫中的數據。 .bacpac 資料庫模型中的物件僅限於 Azure SQL Database 的介面區。 .bacpac 的主要使用案例是將資料庫從一部伺服器移至另一部伺服器,或 將資料庫從本地伺服器移轉至雲端,並以開放式格式封存現有的資料庫。

SqlPackage 可移植性檔深入了解資料庫可移植性。

DACPAC 作業

.dacpac 資料層應用程式套件是 SQL 資料庫專案 的組建成品,可做為完整的資料庫生命週期管理和 DevOps 策略的一部分。 根據預設,數據不會包含在 .dacpac 中,但是當您從即時 SQL Server 或 Azure SQL Database 擷取 .dacpac 時,您可以選擇包含使用者數據表中的數據。 作為 SQL Database 專案工作流程和資料庫開發生命週期不可或缺的一部分,.dacpac 檔案會用於數個作業中。 主要作業如下:

  • 匯出 - 使用者可以將資料庫匯出至 .dacpac。 如需詳細資訊,請參閱 SqlPackage 擷取從資料庫擷取 DAC
  • 部署/發佈 - 使用者可以將 .dacpac 部署到主機伺服器。 將部署完成至現有的資料庫時,資料庫與 DAC 之間的差異會動態計算並套用為累加式更新。 「發佈」一詞通常會與「部署」交替使用。如需詳細資訊,請參閱 SqlPackage 發行部署資料層應用程式

這些功能可在 SqlPackage CLI、SQL Server Management Studio、Azure Data Studio 和 SQL Server Data Tools 中找到。

除了發佈和擷取之外,您也可以利用 dac 註冊 功能,在系統元數據中追蹤資料庫模型:

  • 註冊 - 使用者可以將資料庫註冊為數據層應用程式。 註冊會在系統元數據中儲存資料庫架構目前狀態的表示法。
  • 取消註冊 - 先前註冊為 DAC 的資料庫可以取消註冊。
  • 升級 - 可以使用 .dacpac對資料庫進行升級。

數據層應用程式工具

數據層應用程式的工具支援可讓開發人員和資料庫管理員使用圖形化和命令行介面中的 .dacpac.bacpac 檔案。 除了已發行的工具之外,數據層應用程式 API 也可在適用於 .NET 開發和資料庫生命週期自定義的 資料層應用程式架構 (DACFx) 中使用。

DACPAC 和 BACPAC 套件

下列工具支援 .dacpac.bacpac 格式:

在這些工具中,資料庫可以擷取至 .dacpac 或匯出至 .bacpac。 相反地,.bacpac 可以匯入至新的資料庫,或 .dacpac 可以發行至新的或現有的資料庫。

DACPAC 和 SQL 專案

除了提供 SQL 資料庫項目的編輯之外,下列工具還支援 .dacpac 檔案格式:

在這些工具中,開發人員可以在未連接、用戶端開發環境中設計資料庫。 如需更深入瞭解,請參閱文章中關於 SQL 專案工具的部分