sp_droprolemember (Transact-SQL)

適用対象:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

現在のデータベースの SQL Server ロールからセキュリティ アカウントを削除します。

重要

この機能は、 SQL Serverの将来のバージョンで削除される予定です。 新規の開発作業ではこの機能を使用しないようにし、現在この機能を使用しているアプリケーションは修正することを検討してください。 代わりに ALTER ROLE を使用してください。

Transact-SQL 構文表記規則

構文

SQL Server と Azure SQL Edge の構文:

sp_droprolemember
    [ @rolename = ] N'rolename'
    , [ @membername = ] N'membername'
[ ; ]

Azure Synapse Analytics と Parallel Data Warehouse の構文:

sp_droprolemember N'rolename', 'membername'
[ ; ]

Note

この構文は、Azure Synapse Analytics のサーバーレス SQL プールでサポートされていません。

引数

[ @rolename = ] N'rolename'

メンバーが削除されるロールの名前。 @rolenameは sysname で、既定値はありません。 @rolenameは、現在のデータベースに存在する必要があります。

[ @membername = ] N'membername'

ロールから削除されるセキュリティ アカウントの名前。 @membernameは sysname で、既定値はありません。 @membernameには、データベース ユーザー、別のデータベース ロール、Windows アカウント、または Windows グループを指定できます。 @membernameは、現在のデータベースに存在する必要があります。

リターン コードの値

0 (成功) または 1 (失敗)。

解説

sp_droprolemember は、テーブルから行を削除することで、データベース ロールからメンバーを sysmembers 削除します。 メンバーがロールから削除されると、そのメンバーは、そのロールのメンバーシップによって持っているアクセス許可を失います。

固定サーバー ロールからユーザーを削除するには、sp_dropsrvrolemember ユーザーをパブリック ロールから削除することはできません。また、dbo をどのロールからも削除することはできません。

sp_helpuser SQL Server ロールのメンバーを表示し、ALTER ROLE を使用してロールにメンバーを追加するために使用します。

アクセス許可

ロールに対するアクセス許可が必要 ALTER です。

次の例では、ロール JonB からユーザー Sales を削除します。

EXEC sp_droprolemember 'Sales', 'Jonb';

例: Azure Synapse Analytics、Analytics Platform System (PDW)

次の例では、ロール JonB からユーザー Sales を削除します。

EXEC sp_droprolemember 'Sales', 'JonB'