SSDTデータベースプロジェクトのユーザーを、同じサーバー上の別のデータベースのユーザーとして作成し、接続してdb_datareader
ロールに追加する権限を付与します。
失敗した。 PostDeploymentスクリプトは以下について不満を述べています。
これはどのように実現できますか?必要なコマンドを配置できるスクリプトオプションはありませんか?
質問で説明されているアクションは問題になりません。配置後スクリプトを作成して、次のコードを追加できました。
USE [tempdb];
GO
PRINT DB_NAME();
IF (USER_ID(N'g') IS NULL)
BEGIN
PRINT 'Creating user [g]...';
CREATE USER [g] WITHOUT LOGIN;
END;
ELSE
BEGIN
PRINT 'Dropping user [g]...';
DROP USER [g];
END;
エラーなしでビルドおよびパブリッシュされ、期待どおりにコマンドが実行されます。
SQLスクリプトが本当にPostDeploymentスクリプトであることを確認してください。 BuildScriptに設定されている場合、おそらくこれらのエラーが発生します。スクリプトのプロパティを確認し、ビルドアクションがPostDeployに設定されていることを確認します。
SSDTの最新のアップデートを使用していることを確認してください。最新バージョンはここにあります: