ALTER ROLE (Transact-SQL)ALTER ROLE (Transact-SQL)

S’applique à :Applies to: ouiSQL ServerSQL Server (toutes les versions prises en charge) yesSQL ServerSQL Server (all supported versions) OuiAzure SQL DatabaseAzure SQL DatabaseYesAzure SQL DatabaseAzure SQL Database OuiAzure SQL Managed InstanceAzure SQL Managed InstanceYesAzure SQL Managed InstanceAzure SQL Managed Instance ouiAzure Synapse AnalyticsAzure Synapse AnalyticsyesAzure Synapse AnalyticsAzure Synapse Analytics ouiParallel Data WarehouseParallel Data WarehouseyesParallel Data WarehouseParallel Data WarehouseS’applique à :Applies to: ouiSQL ServerSQL Server (toutes les versions prises en charge) yesSQL ServerSQL Server (all supported versions) OuiAzure SQL DatabaseAzure SQL DatabaseYesAzure SQL DatabaseAzure SQL Database OuiAzure SQL Managed InstanceAzure SQL Managed InstanceYesAzure SQL Managed InstanceAzure SQL Managed Instance ouiAzure Synapse AnalyticsAzure Synapse AnalyticsyesAzure Synapse AnalyticsAzure Synapse Analytics ouiParallel Data WarehouseParallel Data WarehouseyesParallel Data WarehouseParallel Data Warehouse

Ajoute ou supprime des membres dans un rôle de base de données, ou change le nom d’un rôle de base de données défini par l’utilisateur.Adds or removes members to or from a database role, or changes the name of a user-defined database role.

Notes

Pour modifier les rôles en ajoutant ou en supprimant des membres dans Azure Synapse Analytics (SQL Data Warehouse)Azure Synapse Analytics (SQL Data Warehouse) ou Parallel Data WarehouseParallel Data Warehouse, utilisez sp_addrolemember (Transact-SQL) et sp_droprolemember (Transact-SQL).To alter roles adding or dropping members in Azure Synapse Analytics (SQL Data Warehouse)Azure Synapse Analytics (SQL Data Warehouse) or Parallel Data WarehouseParallel Data Warehouse, use sp_addrolemember (Transact-SQL) and sp_droprolemember (Transact-SQL).

Icône Lien de rubrique Conventions de la syntaxe Transact-SQLTopic link icon Transact-SQL Syntax Conventions

SyntaxeSyntax

-- Syntax for SQL Server (starting with 2012) and Azure SQL Database  
  
ALTER ROLE  role_name  
{  
       ADD MEMBER database_principal  
    |  DROP MEMBER database_principal  
    |  WITH NAME = new_name  
}  
[;]  
-- Syntax for SQL Server 2008, Azure Synapse Analytics and Parallel Data Warehouse
  
-- Change the name of a user-defined database role  
ALTER ROLE role_name   
    WITH NAME = new_name  
[;]  

Notes

Pour afficher la syntaxe Transact-SQL pour SQL Server 2014 et versions antérieures, consultez Versions antérieures de la documentation.To view Transact-SQL syntax for SQL Server 2014 and earlier, see Previous versions documentation.

ArgumentsArguments

role_namerole_name
S’APPLIQUE À : SQL ServerSQL Server (à compter de 2008), Azure SQL DatabaseAzure SQL DatabaseAPPLIES TO: SQL ServerSQL Server (starting with 2008), Azure SQL DatabaseAzure SQL Database

Spécifie le rôle de base de données à changer.Specifies the database role to change.

ADD MEMBER principal_base_de_donnéesADD MEMBER database_principal
S’APPLIQUE À : SQL ServerSQL Server (à compter de 2012), Azure SQL DatabaseAzure SQL DatabaseAPPLIES TO: SQL ServerSQL Server (starting with 2012), Azure SQL DatabaseAzure SQL Database

Indique que le principal de base de données doit être ajouté à l’appartenance à un rôle de base de données.Specifies to add the database principal to the membership of a database role.

  • database_principal est un utilisateur de base de données ou un rôle de base de données défini par l’utilisateur.database_principal is a database user or a user-defined database role.

  • database_principal ne peut être ni un rôle de base de données fixe, ni un principal de serveur.database_principal cannot be a fixed database role or a server principal.

DROP MEMBER database_principalDROP MEMBER database_principal
S’APPLIQUE À : SQL ServerSQL Server (à compter de 2012), Azure SQL DatabaseAzure SQL DatabaseAPPLIES TO: SQL ServerSQL Server (starting with 2012), Azure SQL DatabaseAzure SQL Database

Indique qu’un principal de base de données doit être supprimé de l’appartenance à un rôle de base de données.Specifies to remove a database principal from the membership of a database role.

  • database_principal est un utilisateur de base de données ou un rôle de base de données défini par l’utilisateur.database_principal is a database user or a user-defined database role.

  • database_principal ne peut être ni un rôle de base de données fixe, ni un principal de serveur.database_principal cannot be a fixed database role or a server principal.

WITH NAME = new_nameWITH NAME = new_name
S’APPLIQUE À : SQL ServerSQL Server (à compter de 2008), Azure SQL DatabaseAzure SQL DatabaseAPPLIES TO: SQL ServerSQL Server (starting with 2008), Azure SQL DatabaseAzure SQL Database

Indique que le nom d’un rôle serveur défini par l’utilisateur doit être changé.Specifies to change the name of a user-defined database role. Le nouveau nom ne doit pas déjà exister dans la base de données.The new name must not already exist in the database.

La modification du nom d'un rôle de base de données ne modifie pas le numéro d'identification, le propriétaire ou les autorisations du rôle.Changing the name of a database role does not change ID number, owner, or permissions of the role.

AutorisationsPermissions

Pour exécuter cette commande, vous devez disposer d’une ou de plusieurs des autorisations ou appartenances suivantes :To run this command you need one or more of these permissions or memberships:

  • Autorisation ALTER sur le rôleALTER permission on the role
  • Autorisation ALTER ANY ROLE sur la base de donnéesALTER ANY ROLE permission on the database
  • Appartenance au rôle de base de données fixe db_securityadminMembership in the db_securityadmin fixed database role

De plus, pour changer l’appartenance à un rôle de base de données fixe, vous devez disposer de ceci :Additionally, to change the membership in a fixed database role you need:

  • Appartenance au rôle de base de données fixe db_ownerMembership in the db_owner fixed database role

Limitations et restrictionsLimitations and restrictions

Vous ne pouvez pas changer le nom d’un rôle de base de données fixe.You cannot change the name of a fixed database role.

MétadonnéesMetadata

Les vues système suivantes contiennent des informations sur les rôles de base de données et les principaux de base de données.These system views contain information about database roles and database principals.

ExemplesExamples

R.A. Changer le nom d’un rôle de base de donnéesChange the name of a database role

S’APPLIQUE À : SQL ServerSQL Server (à compter de 2008), SQL DatabaseSQL DatabaseAPPLIES TO: SQL ServerSQL Server (starting with 2008), SQL DatabaseSQL Database

L'exemple suivant remplace le nom du rôle buyers par purchasing.The following example changes the name of role buyers to purchasing. Cet exemple peut être exécuté dans la base de données exemple AdventureWorks.This example can be executed in the AdventureWorks sample database.

ALTER ROLE buyers WITH NAME = purchasing;  

B.B. Ajouter ou supprimer des membres d’un rôleAdd or remove role members

S’APPLIQUE À : SQL ServerSQL Server (à compter de 2012), SQL DatabaseSQL DatabaseAPPLIES TO: SQL ServerSQL Server (starting with 2012), SQL DatabaseSQL Database

Cet exemple crée un rôle de base de données nommé Sales.This example creates a database role named Sales. Il ajoute un utilisateur de base de données nommé Barry à l’appartenance, puis montre comment supprimer le membre Barry.It adds a database user named Barry to the membership, and then shows how to remove the member Barry. Cet exemple peut être exécuté dans la base de données exemple AdventureWorks.This example can be executed in the AdventureWorks sample database.

CREATE ROLE Sales;  
ALTER ROLE Sales ADD MEMBER Barry;  
ALTER ROLE Sales DROP MEMBER Barry;  

Voir aussiSee Also

CREATE ROLE (Transact-SQL) CREATE ROLE (Transact-SQL)
Principaux (moteur de base de données) Principals (Database Engine)
DROP ROLE (Transact-SQL) DROP ROLE (Transact-SQL)
sp_addrolemember (Transact-SQL) sp_addrolemember (Transact-SQL)
sys.database_role_members (Transact-SQL) sys.database_role_members (Transact-SQL)
sys.database_principals (Transact-SQL)sys.database_principals (Transact-SQL)