다음을 통해 공유


DROP SERVER ROLE(Transact-SQL)

적용 대상: SQL Server Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System(PDW)

사용자 정의 서버 역할을 제거합니다.

사용자 정의 서버 역할은 SQL Server 2012(11.x)의 새로운 기능입니다.

Transact-SQL 구문 표기 규칙

구문

DROP SERVER ROLE role_name  

인수

role_name
서버에서 삭제할 사용자 정의 서버 역할을 지정합니다.

설명

보안 개체를 소유한 사용자 정의 서버 역할을 서버에서 삭제할 수 없습니다. 보안 개체를 소유한 사용자 정의 서버 역할을 삭제하려면 먼저 해당 보안 개체의 소유권을 이전하거나 삭제해야 합니다.

멤버가 있는 사용자 정의 서버 역할은 삭제할 수 없습니다. 멤버가 있는 사용자 정의 서버 역할을 삭제하려면 먼저 ALTER SERVER ROLE을 사용하여 역할의 멤버를 제거해야 합니다.

고정 서버 역할은 제거할 수 없습니다.

sys.server_role_members 카탈로그 뷰를 쿼리하여 역할 멤버 자격에 대한 정보를 볼 수 있습니다.

사용 권한

서버 역할에 대한 CONTROL 권한 또는 ALTER ANY SERVER ROLE 권한이 필요합니다.

예제

A. 서버 역할 삭제

다음 예에서는 서버 역할 purchasing을 삭제합니다.

DROP SERVER ROLE purchasing;  
GO  

B. 역할 멤버 자격 보기

역할 멤버 자격을 보려면 SQL Server Management Studio에서 서버 역할(멤버) 페이지를 사용하거나 다음 쿼리를 실행합니다.

SELECT SRM.role_principal_id, SP.name AS Role_Name,   
SRM.member_principal_id, SP2.name  AS Member_Name  
FROM sys.server_role_members AS SRM  
JOIN sys.server_principals AS SP  
    ON SRM.Role_principal_id = SP.principal_id  
JOIN sys.server_principals AS SP2   
    ON SRM.member_principal_id = SP2.principal_id  
ORDER BY  SP.name,  SP2.name  

C. 역할 멤버 자격 보기

서버 역할이 다른 서버 역할을 소유하는지 여부를 확인하려면 다음 쿼리를 실행하십시오.

SELECT SP1.name AS RoleOwner, SP2.name AS Server_Role  
FROM sys.server_principals AS SP1  
JOIN sys.server_principals AS SP2  
    ON SP1.principal_id = SP2.owning_principal_id   
ORDER BY SP1.name ;  

참고 항목

ALTER ROLE(Transact-SQL)
CREATE ROLE(Transact-SQL)
보안 주체(데이터베이스 엔진)
DROP ROLE(Transact-SQL)
EVENTDATA(Transact-SQL)
sp_addrolemember(Transact-SQL)
sys.database_role_members(Transact-SQL)
sys.database_principals(Transact-SQL)