Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de changer d’annuaire.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer d’annuaire.
S’applique à :SQL Server
Azure SQL Database
Azure SQL Managed Instance
Endpoint SQL analytics dans Microsoft Fabric
Entrepôt dans Microsoft Fabric
Base de données SQL dans Microsoft Fabric
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.
Note
Pour ajouter ou supprimer des rôles dans Azure Synapse Analytics ou Analytics Platform System (PDW), utilisez sp_addrolemember (Transact-SQL) et sp_droprolemember (Transact-SQL).
Conventions de la syntaxe Transact-SQL
Syntax
Syntaxe pour SQL Server (à partir de 2012), Azure SQL Managed Instance, Azure SQL Database et Microsoft Fabric.
ALTER ROLE role_name
{
ADD MEMBER database_principal
| DROP MEMBER database_principal
| WITH NAME = new_name
}
[;]
Syntaxe pour SQL Server avant la version 2012.
-- Change the name of a user-defined database role
ALTER ROLE role_name
WITH NAME = new_name
[;]
Arguments
role_name
S’applique à : SQL Server (à partir de 2008), Azure SQL Database, Azure SQL Managed Instance
Spécifie le rôle de base de données à changer.
ADD MEMBER principal_base_de_données
S’applique à : SQL Server (à partir de 2012), Azure SQL Database, Azure SQL Managed Instance
Indique que le principal de base de données doit être ajouté à l’appartenance à un rôle de base de données.
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 ne peut être ni un rôle de base de données fixe, ni un principal de serveur.
MEMBRE DE DÉPART database_principal
S’applique à : SQL Server (à partir de 2012), Azure SQL Database, Azure SQL Managed Instance
Indique qu’un principal de base de données doit être supprimé de l’appartenance à un rôle de base de données.
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 ne peut être ni un rôle de base de données fixe, ni un principal de serveur.
AVEC NOM = new_name
S’applique à : SQL Server (à partir de 2008), Azure SQL Database, Azure SQL Managed Instance
Indique que le nom d’un rôle serveur défini par l’utilisateur doit être changé. Le nouveau nom ne doit pas déjà exister dans la base de données.
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.
Permissions
Pour exécuter cette commande, vous devez disposer d’une ou de plusieurs des autorisations ou appartenances suivantes :
- Autorisation ALTER sur le rôle
- Autorisation ALTER ANY ROLE sur la base de données
- Appartenance au rôle de base de données fixe db_securityadmin
De plus, pour changer l’appartenance à un rôle de base de données fixe, vous devez disposer de ceci :
- Appartenance au rôle de base de données fixe db_owner
Limitations et restrictions
Vous ne pouvez pas changer le nom d’un rôle de base de données fixe.
Metadata
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.
Examples
A. Changer le nom d’un rôle de base de données
S’applique à : SQL Server (à partir de 2008), Azure SQL Database, Azure SQL Managed Instance
L'exemple suivant remplace le nom du rôle buyers par purchasing. Cet exemple peut être exécuté dans la base de données exemple AdventureWorks.
ALTER ROLE buyers WITH NAME = purchasing;
B. Ajouter ou supprimer des membres d’un rôle
S’applique à : SQL Server (à partir de 2012), Azure SQL Database, Azure SQL Managed Instance
Cet exemple crée un rôle de base de données nommé Sales. Il ajoute un utilisateur de base de données nommé Barry à l’appartenance, puis montre comment supprimer le membre Barry. Cet exemple peut être exécuté dans la base de données exemple AdventureWorks.
CREATE ROLE Sales;
ALTER ROLE Sales ADD MEMBER Barry;
ALTER ROLE Sales DROP MEMBER Barry;
C. Ajouter un membre de rôle à des rôles spéciaux pour Azure SQL Database
S’applique à : Azure SQL Database
Cet exemple crée une connexion SQL dans la base de données Master virtuelle ainsi qu’un utilisateur de base de données associé à cette connexion de serveur, et ajoute l’utilisateur de base de données comme membre du rôle spécial dbmanager. L’exemple autorise l’utilisateur à créer et supprimer des bases de données sur un serveur logique Azure SQL Database. Exécutez l’exemple sur la base de données Master virtuelle du serveur logique Azure SQL Database.
CREATE LOGIN sqllogin_nlastname WITH password='aah3%#om1os';
CREATE USER sqllogin_nlastname FOR LOGIN sqllogin_nlastname
WITH DEFAULT_SCHEMA = master;
ALTER ROLE [dbmanager] add member sqllogin_nlastname;
Voir aussi
CRÉER RÔLE (Transact-SQL)
Principaux (moteur de base de données)
ABANDON DU RÔLE (Transact-SQL)
sp_addrolemember (Transact-SQL)
sys.database_role_members (Transact-SQL)
sys.database_principals (Transact-SQL)