ALTER ROLE (Transact-SQL)

データベース ロールの名前を変更します。

トピック リンク アイコンTransact-SQL 構文表記規則

構文

ALTER ROLE role_name WITH NAME = new_name

引数

  • role_name
    変更するロールの名前を指定します。

  • WITH NAME **=**new_name
    新しいロールの名前を指定します。データベース内に存在しない名前を指定してください。

説明

データベース ロールの名前を変更しても、ロールの ID 番号、所有者、権限は変わりません。

データベース ロールは、sys.database_role_members および sys.database_principals カタログ ビューで確認できます。

注記注意

SQL Server 2005 からスキーマの動作が変更されました。 その結果、スキーマがデータベース ユーザーと同じであると想定しているコードでは、正しい結果が返されない場合があります。 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 のいずれかの DDL ステートメントが使用されたことのあるデータベースでは、sysobjects などの古いカタログ ビューを使用しないでください。 そのようなデータベースでは、代わりに新しいカタログ ビューを使用してください。 新しいカタログ ビューでは、SQL Server 2005 で導入されたプリンシパルとスキーマの分離が考慮されます。 カタログ ビューの詳細については、「カタログ ビュー (Transact-SQL)」を参照してください。

権限

データベースに対する ALTER ANY ROLE 権限が必要です。

次の例では、ロール buyers の名前を purchasing に変更します。

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