質問: 私は付与する必要があり`db_datawriter`実行する前に、 `SqlBulkCopy`とした後、それを削除します。 ``` try { "EXEC [db_mod].[sys].[sp_addrolemember] N'db_datawriter', N'my_user'" // via SqlCommand bulk.WriteToServer(table); } finally { "EXEC [db_mod].[sys].[sp_droprolemember] N'db_datawriter', N'my_user'" // via another SqlCommand } ``` しかし私はエラーが発生しています: > ユーザーにはこの操作を実行する権限がありません。 > > どうすれば修正できますか?
回答: MSDN sp_addrolememberは、どのような権限が必要かを指示します... * db_owner固定データベースロールのメンバシップ。 * db_securityadmin固定データベースロールのメンバシップ。 * 役割を所有する役割のメンバーシップ。 * 役割に対するALTER権限 実際には、db_securityadminロールにいなければなりません。 しかし、単にGRANTを介してINSERT / UPDATE権限を保持するのはなぜですか?あなた自身の権利を与える権利は、それ以上の権利を必要としないほどの特権を意味します...