sp_droprolemember(Transact-SQL)

적용 대상:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics AnalyticsPlatform System(PDW)

현재 데이터베이스의 SQL Server 역할에서 보안 계정을 제거합니다.

Important

이 기능은 이후 버전의 SQL Server에서 제거됩니다. 새 개발 작업에서는 이 기능을 사용하지 않도록 하고, 현재 이 기능을 사용하는 애플리케이션은 수정하세요. 대신 ALTER ROLE을 사용합니다.

Transact-SQL 구문 표기 규칙

구문

SQL Server 및 Azure SQL Edge에 대한 구문:

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

Azure Synapse Analytics 및 병렬 데이터 웨어하우스용 구문:

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

참고 항목

이 구문은 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는 역할에서 제거할 수 없습니다.

SQL Server 역할의 멤버를 확인하고 ALTER ROLE을 사용하여 역할에 멤버를 추가하는 데 사용합니다 sp_helpuser .

사용 권한

ALTER 역할에 대한 권한이 필요합니다.

예제

다음 예제에서는 역할Sales에서 사용자를 JonB 제거합니다.

EXEC sp_droprolemember 'Sales', 'Jonb';

예: Azure Synapse Analytics 및 분석 플랫폼 시스템(PDW)

다음 예제에서는 역할Sales에서 사용자를 JonB 제거합니다.

EXEC sp_droprolemember 'Sales', 'JonB'