データベースの増分アップグレードが必要ない場合は、この問題に対する別の解決策があります。したがって、ビルドごとにデータベースを再作成しても問題ない場合は、次の方法も機能します。
デプロイ ターゲットをデータベース プロジェクト ファイルに追加する
「<code>My project settings」のデプロイ設定を構成します。これらの設定は、ソリューションのビルド時にビルド サーバーによって使用されます。ローカルでビルドする場合、使用される設定は「<code>分離された開発環境」の設定になります。
- データベース プロジェクトのプロパティで
Deploy Action は、'<code>Create a deployment script (.sql) and deploy the database' である必要があります。これにより、スクリプトの実行が妨げられ、スクリプトが作成されるだけです。
- データベース プロジェクト ファイル
データベース プロジェクト ファイルを変更します (データベース プロジェクトを右クリックして [アンロード] を選択し、もう一度右クリックして [[ProjectName].dbproj の編集] を選択します)。
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
に
<Project DefaultTargets="Build;Deploy" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
ビルド サーバーがデータベース プロジェクトを含むソリューションをビルドするときに、既定のターゲットを追加すると、データベースも配置されます。このビルドは、'<code>My project settings' で選択された Deploy 設定を使用します。
長所
短所
- デフォルトのターゲットが Build and Deploy に変更されているため、開発者がソリューションのローカル リビルドを実行すると、データベースもデプロイされます (ビルドのみではデプロイはトリガーされません)。