適用於:SQL Server
Azure SQL Database
Azure SQL 受控實例
Microsoft Fabric 中的 SQL Database
數據層應用程式 (DAC) 是邏輯資料庫實體,可定義與使用者資料庫相關聯的所有 SQL Server 物件,例如數據表、檢視和實例物件,包括登入。 數據層應用程式是整個資料庫模型的獨立單位,可在 .dacpac
和 .bacpac
套件中移植。 數據層應用程式的 工具支援,可讓開發人員和資料庫管理員將 .dacpac
和 .bacpac
檔案套用至新的或現有的資料庫,或從現有的資料庫產生新的檔案。
營運
BACPAC 作業
.bacpac
檔案格式是一個相關的工件,預設會包括資料庫架構和儲存在資料庫中的數據。
.bacpac
資料庫模型中的物件僅限於 Azure SQL Database 的介面區。
.bacpac
的主要使用案例是將資料庫從一部伺服器移至另一部伺服器,或 將資料庫從本地伺服器移轉至雲端,並以開放式格式封存現有的資料庫。
-
匯出 - 使用者可以將資料庫匯出至
.bacpac
檔案。 如需詳細資訊,請參閱 SqlPackage 匯出 和 將資料庫匯出至 BACPAC 檔案。 -
匯入 - 使用者可以將
.bacpac
檔案匯入新的資料庫。 如需詳細資訊,請參閱 SqlPackage 匯入 和 將 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 Server Data Tools 在 Visual Studio 中
- SQL Database 專案擴充套件
在這些工具中,開發人員可以在未連接、用戶端開發環境中設計資料庫。 如需更深入瞭解,請參閱文章中關於 SQL 專案工具的部分。