0

Visual Studio 2012 データベース プロジェクトを構成して展開 .sql ファイル パッケージをビルドする方法を知っている人はいますか。

唯一の展開オプションとして .dacpac を使用する必要がないようにしています。

たとえば、すべてのデータベース スキーマ変更の .sql ファイルを生成します。

4

1 に答える 1

1

これを自動的に実行しようとしている場合は、SQLPackage コマンドを使用してスクリプトを生成する必要があります。IDE 内でこれを行う場合は、データベースを公開し、変更を公開する代わりにスクリプトを生成するオプションを選択します。

通常、最初に msbuild でプロジェクトをビルドします。これにより、SQLPackage コマンドを実行できる dacpac が生成されます。

私のバッチファイルは次のようになります。

msbuild .\MyDB\MyDB.sqlproj /t:build /p:Configuration="Local"
sqlpackage /a:DeployReport /tsn:FTPROD /sf:.\MyDB\sql\Local\MyDB.dacpac /pr:.\MyDB\Publish\Production.publish.xml /op:.\Release\MyDB-Production.xml
sqlpackage /a:script /tsn:DBServer /sf:.\MyDB\sql\Local\MyDB.dacpac /pr:.\MyDB\Publish\Production.publish.xml /op:.\Release\MyDB-Production.sql

最初の行でプロジェクトをビルドします。2 つ目はデプロイ レポートを作成するので、変更内容を簡単に確認できます。最後はスクリプトを生成します。パスは異なる場合があるため、環境に合わせて調整する必要があります。スクリプトを生成するには、スクリプトが実行されるデータベースにアクセスできる必要があります。

于 2013-08-27T19:04:12.733 に答える