Sdílet prostřednictvím


ROLE DROP SERVERA (Transact-SQL)

Platí na:SQL ServerAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytický platformový systém (PDW)

Odstraňuje uživatelsky definovanou serverovou roli.

Uživatelsky definované serverové role byly zavedeny v SQL Server 2012 (11.x).

Transact-SQL konvence syntaxe

Syntaxe

DROP SERVER ROLE role_name
[ ; ]

Arguments

role_name

Specifikuje uživatelsky definovanou serverovou roli, která má být ze serveru odstraněna.

Poznámky

Uživatelsky definované serverové role, které vlastní securables, nelze ze serveru odstranit. Chcete-li zrušit uživatelsky definovanou serverovou roli, která vlastní securables, musíte nejprve převést vlastnictví těchto securables nebo je smazat.

Uživatelsky definované serverové role, které mají členy, nelze zrušit. Pro zrušení uživatelsky definované serverové role, která má členy, musíte nejprve odstranit členy této role pomocí ALTER SERVER ROLE.

Pevné serverové role nelze odstranit.

Informace o členství v roli si můžete prohlédnout dotazem v sys.server_role_members katalogu.

Povolení

Vyžaduje CONTROL oprávnění nebo oprávnění k roli ALTER ANY SERVER ROLE serveru.

Examples

A. Opustit roli serveru

Následující příklad opouští roli purchasingserveru .

DROP SERVER ROLE purchasing;
GO

B. Pro zobrazení členství v roli

Pro zobrazení členství v rolích použijte stránku Server Role (Members) v SQL Server Management Studio nebo spusťte následující dotaz:

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
     INNER JOIN sys.server_principals AS SP
         ON SRM.Role_principal_id = SP.principal_id
     INNER JOIN sys.server_principals AS SP2
         ON SRM.member_principal_id = SP2.principal_id
ORDER BY SP.name, SP2.name;

C. Pro zobrazení členství v roli

Pro určení, zda role serveru vlastní jinou serverovou roli, spusťte následující dotaz:

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