次の方法で共有


DROP ROLE (Transact-SQL)

データベースからロールを削除します。

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

構文

DROP ROLE role_name

引数

  • role_name
    データベースから削除するロールを指定します。

説明

セキュリティ保護可能なリソースを所有するロールは、データベースから削除できません。セキュリティ保護可能なリソースを所有するデータベース ロールを削除するには、最初に、セキュリティ保護可能なリソースの所有権を転送するか、リソースをデータベースから削除する必要があります。メンバを含むロールは、データベースから削除できません。メンバを含むロールを削除するには、最初にロールのメンバを削除する必要があります。

DROP ROLE を使用して、固定データベース ロールを削除することはできません。

ロールのメンバシップに関する情報は、sys.database_role_members カタログ ビューで表示できます。

注記注意

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)」を参照してください。

権限

ロールに対する CONTROL 権限、またはデータベースに対する ALTER ANY ROLE 権限が必要です。

次の例では、データベース ロール purchasing を AdventureWorks から削除します。

USE AdventureWorks;
DROP ROLE purchasing;
GO