Поделиться через


ALTER ROLE (Transact-SQL)

Изменяет имя роли базы данных.

Значок ссылки на разделСоглашения о синтаксисе в Transact-SQL

Синтаксис

ALTER ROLE role_name WITH NAME = new_name

Аргументы

  • role_name
    Имя роли, подлежащей изменению.
  • WITH NAME **=**new_name
    Указывает новое имя роли. Данное имя уже не должно существовать в базе данных.

Замечания

Изменение имени роли базы данных не изменяет идентификационный номер, владельца или разрешения роли.

Роли базы данных видны в представлениях каталога sys.database_role_members и sys.database_principals.

ms189775.Caution(ru-ru,SQL.90).gifВнимание!
В SQL Server 2005 поведение схем отличается от поведения в ранних версиях SQL Server. Код, предполагающий, что схемы эквивалентны пользователям базы данных, может возвращать неверные результаты. Старые представления каталога содержат таблицу sysobjects, которая не может быть использована в базе данных, в которой когда-либо выполнялась любая из следующих инструкций DDL: 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. В базе данных, в которой когда-либо выполнялась любая из этих инструкций, необходимо использовать новые представления каталога. Новые представления каталога принимают во внимание разделение участников и схем, которые представлены в SQL Server 2005. Дополнительные сведения о представлениях каталога см. в разделе Представления каталога (Transact-SQL).

Разрешения

Требует разрешения ALTER ANY ROLE для базы данных.

Примеры

Следующий пример изменяет имя роли buyers на purchasing.

USE AdventureWorks;
ALTER ROLE buyers WITH NAME = purchasing;
GO

См. также

Справочник

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)

Другие ресурсы

Участники

Справка и поддержка

Получение помощи по SQL Server 2005