ALTER ROLE (Transact-SQL)
Modifie le nom d'un rôle de base de données.
Syntaxe
ALTER ROLE role_name WITH NAME = new_name
Arguments
role_name
Nom du rôle à modifier.WITH NAME =new_name
Spécifie le nouveau nom du rôle. Ce nom ne doit pas déjà exister dans la base de données.
Notes
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.
Les rôles de base de données sont visibles dans les affichages catalogue sys.database_role_members et sys.database_principals.
Attention |
---|
Avec l'arrivée de SQL Server 2005, le comportement des schémas a changé. Ainsi, le code qui suppose que les schémas sont équivalents aux utilisateurs de base de données peut ne plus renvoyer des résultats corrects. Vous ne devez pas recourir aux anciens affichages catalogue, notamment sysobjects, dans une base de données où une des instructions DDL suivantes a été utilisée : CREATE SCHEMA, ALTER SCHEMA, DROP SCHEMA, CREATE USER, ALTER USER, DROP USER, CREATE ROLE, ALTER ROLE, DROP ROLE, CREATE APPROLE, ALTER APPROLE, DROP APPROLE, ALTER AUTHORIZATION. Dans ces bases de données, vous devez utiliser les nouveaux affichages catalogue. Les nouveaux affichages catalogue tiennent compte de la séparation des principaux et des schémas introduite dans SQL Server 2005 Pour plus d'informations sur les affichages catalogue, consultez Affichages catalogue (Transact-SQL). |
Autorisations
ALTER ANY ROLE sur la base de données, ou ALTER sur le rôle, ou appartenance au rôle db_securityadmin.
Exemples
Le code exemple suivant remplace le nom du rôle buyers par purchasing.
USE AdventureWorks2008R2;
ALTER ROLE buyers WITH NAME = purchasing;
GO