適用対象:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Microsoft Fabric プレビューの SQL データベース
データ層アプリケーション (DAC) は、ユーザーのデータベースに関連付けられているすべての SQL Server オブジェクト (テーブル、ビュー、インスタンス オブジェクト (ログインを含む) を定義する論理データベース エンティティです。 データ層アプリケーションは、データベース モデル全体の自己完結型ユニットであり、 .dacpac
パッケージと .bacpac
パッケージの両方で移植可能です。 データ層アプリケーションのツールサポートにより、開発者とデータベース管理者は、新規または既存のデータベースに.dacpac
および.bacpac
ファイルを適用したり、既存のデータベースから新しいファイルを生成したりできます。
Operations
BACPAC operations
.bacpac
ファイル形式は、データベース スキーマとデータベースに格納されているデータを既定でカプセル化する関連成果物です。
.bacpac
データベース モデル内のオブジェクトは、Azure SQL Database のサーフェス領域に制限されます。
.bacpac
の主なユース ケースは、あるサーバーから別のサーバーにデータベースを移動するか、ローカル サーバーからクラウドにデータベースを移行し、既存のデータベースをオープン形式でアーカイブすることです。
-
エクスポート - ユーザーはデータベースを
.bacpac
ファイルにエクスポートできます。 詳細については、「SqlPackage でのデータベースの BACPAC ファイルへのエクスポートとエクスポート」を参照してください。 -
インポート - ユーザーは、
.bacpac
ファイルを新しいデータベースにインポートできます。 詳細については、「 SqlPackage によるBACPAC ファイルのデータベースへのインポートとインポート」を参照してください。
データベースの移植性の詳細については、 SqlPackage の移植性に関するドキュメントを参照してください。
DACPAC operations
.dacpac
データ層アプリケーション パッケージは、SQL データベース プロジェクトからのビルド 成果物であり、包括的なデータベース ライフサイクル管理と DevOps 戦略の一部として使用できます。 データは既定では .dacpac
に含まれませんが、ライブ SQL Server または Azure SQL Database から .dacpac
を抽出するときに、ユーザー テーブルからデータを含めることができます。 SQL データベース プロジェクト ワークフローとデータベース開発ライフサイクルの不可欠な部分として、 .dacpac
ファイルは複数の操作で使用されます。 主な操作は次のとおりです。
-
抽出 - ユーザーはデータベースを
.dacpac
に抽出できます。 詳細については、「SqlPackage のデータベースからの DAC の抽出と抽出」を参照してください。 -
デプロイ/発行 - ユーザーはホスト サーバーに
.dacpac
を展開できます。 既存のデータベースへの配置が完了すると、データベースと DAC の違いが動的に計算され、増分更新として適用されます。 "発行" という用語は、多くの場合、"デプロイ" と同じ意味で使用されます。詳細については、「SqlPackage でのデータ層アプリケーションの発行とデプロイ」を参照してください。
これらの機能は、SqlPackage CLI、SQL Server Management Studio、Azure Data Studio、SQL Server Data Tools で確認できます。
パブリッシュと抽出に加えて、 dac 登録 機能を使用して、システム メタデータ内のデータベース モデルを追跡することもできます。
- 登録 - ユーザーはデータベースをデータ層アプリケーションとして登録できます。 Register は、データベース スキーマの現在の状態の表現をシステム メタデータに格納します。
- 登録解除 - 以前に DAC として登録されたデータベースを登録解除できます。
-
アップグレード -
.dacpac
を使用してデータベースをアップグレードできます。
データ層アプリケーション ツール
データ層アプリケーションのツールサポートにより、開発者とデータベース管理者はグラフィカル インターフェイスとコマンド ライン インターフェイスの両方から .dacpac
ファイルと .bacpac
ファイルを操作できます。 リリースされたツールに加えて、データ層アプリケーション API は、.NET 開発とデータベース ライフサイクルのカスタマイズのために データ層 Application Framework (DACFx) で使用できます。
DACPAC パッケージと BACPAC パッケージ
次のツールは、 .dacpac
形式と .bacpac
形式をサポートしています。
これらのツールでは、データベースを .dacpac
に抽出したり、 .bacpac
にエクスポートしたりできます。 逆に、 .bacpac
は新しいデータベースにインポートすることも、 .dacpac
を新規または既存のデータベースにパブリッシュすることもできます。
DACPAC および SQL プロジェクト
次のツールでは、SQL データベース プロジェクトの編集だけでなく、 .dacpac
ファイル形式もサポートされています。
これらのツールでは、開発者は接続されていないクライアント側開発環境でデータベースを設計できます。 詳細については、 SQL プロジェクト ツール に関する記事を参照してください。