あなたが尋ねたように、これはVisual Studioからのものではありませんが、回避策かもしれません。データベースが開発サーバーに存在する場合は、おそらくSqlPackage.exe Export
とExtract
アクションを使用できます。
輸出用
デフォルトでは、すべてのテーブルのデータが .bacpac ファイルに含まれます。
SqlPackage.exe エクスポート アクションは、ライブ データベースを SQL Server または Windows Azure SQL データベースから BACPAC パッケージ (.bacpac ファイル) にエクスポートします。デフォルトでは、すべてのテーブルのデータが .bacpac ファイルに含まれます。必要に応じて、データをエクスポートするテーブルのサブセットのみを指定できます。エクスポート アクションの検証により、テーブルのサブセットがエクスポート用に指定されている場合でも、ターゲット データベース全体に対する Windows Azure SQL データベースの互換性が保証されます。
sqlpackage.exe /action:Export /TargetFile:"test.bacpac"
/sourceDatabasename:test
/sourceservername:.\testserver
bacpac
ファイル
をインポートできますhttps://msdn.microsoft.com/en-us/library/hh710052.aspx
抽出用
ユーザー テーブル データを使用して DACPAC を作成します。
sqlpackage.exe /action:Extract /TargetFile:"test.dacpac"
/sourceDatabasename:test
/sourceservername:".\testserver"
/p:ExtractAllTableData=true
SqlPackage.exe を使用したくない場合、この記事は古いものですが、次の 3 つの回避策が有効です。
1) SSMS オブジェクト エクスプローラーの [サーバー]/管理/データ層アプリケーション/[アプリケーション名] ノードの下にある SSMS の「データ層アプリケーションのアップグレード...」ウィザードを使用して、同じ .dacpac ファイルを再展開します。アップグレード ウィザードには、.dacpac ファイル内の展開前および/または展開後のスクリプトを実行するためのチェックボックス オプションが表示されます。デプロイ前およびデプロイ後の両方のスクリプト オプションを有効にしてからアップグレードを実行すると、期待どおりの結果が得られます。
2) SSMS クエリ ウィンドウ、SQLCMD.exe、または simliar を使用して、DACPAC の展開前および/または展開後の T-SQL スクリプト ファイルを手動で実行します。これには、DACPAC 作成者が DACPAC ファイルと一緒に展開前/展開後のスクリプトを出荷する必要があります。または、展開前/展開後のスクリプトは、Microsoft DacUnpack.exe ユーティリティまたは ZIP ファイル ユーティリティ (ファイル拡張子を .dacpac から .zip に変更した後) を使用して抽出できます。
3) MSBuild.exe (v4.0.30319.1 以降) または Visual Studio 2010 Premium SP1 (以降) を使用して、"SQL Server データ層アプリケーション" プロジェクト ファイルを展開します。(例: "msbuild /Target:Deploy DeploymentDemo.dbproj")。