プライマリ・コンテンツに移動
Oracle® Database SQL言語リファレンス
11gリリース2 (11.2)
B56299-08
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

DROP USER

用途

DROP USER文を使用すると、データベース・ユーザーを削除できます。また、オプションでユーザーのオブジェクトを削除することもできます。

Oracle Automatic Storage Management (Oracle ASM)クラスタでは、AS SYSASMと認証されたユーザーは、この句を使用して、現行のノードのOracle ASMインスタンスに対してローカルなパスワード・ファイルでユーザーを削除できます。

ユーザーを削除すると、そのユーザーのすべてのスキーマ・オブジェクトもごみ箱から消去されます。


注意:

SYSユーザーまたはSYSTEMユーザーを削除しないでください。これらのユーザーを削除すると、データベースが破損します。


関連項目:

ユーザーの作成および変更の詳細は、「CREATE USER」および「ALTER USER」を参照してください。

前提条件

DROP USERシステム権限が必要です。Oracle ASMクラスタでは、AS SYSASMと認証される必要があります。

構文

drop_user::=

drop_user.gifの説明が続きます。
図「drop_user.gif」の説明

セマンティクス

user

削除するユーザーを指定します。CASCADEを指定しない場合、またはユーザーのオブジェクトを最初に明示的に削除しない場合、所有するスキーマにオブジェクトが含まれているユーザーは削除されません。

ユーザーの削除の制限事項 

履歴追跡にフラッシュバック・データ・アーカイブを使用する表がスキーマに含まれているユーザーは削除できません。まず、表でのフラッシュバック・データ・アーカイブの使用を無効にする必要があります。

CASCADE

CASCADEを指定すると、ユーザーを削除する前に、そのユーザーのスキーマ内にあるすべてのオブジェクトを削除できます。所有するスキーマにオブジェクトが含まれているユーザーを削除する場合は、必ずこの句を指定します。

  • ユーザーのスキーマに表がある場合、表が削除され、その表の主キーまたは一意キーを参照している他のユーザーのスキーマ内にある表の参照整合性制約も自動的に削除されます。

  • この句で表が削除される場合、その表の列で作成されたすべてのドメイン索引も削除され、適切な削除ルーチンが起動されます。


    関連項目:

    これらのルーチンの詳細は、『Oracle Databaseデータ・カートリッジ開発者ガイド』を参照してください。

  • 他のスキーマにある次のオブジェクトは削除されず、無効にされます。

    • 削除されたユーザーのスキーマ内のビューまたはシノニム

    • 削除されたユーザーのスキーマ内のオブジェクトを問い合せるストアド・プロシージャ、ファンクションまたはパッケージ

  • 削除されたユーザーのスキーマ内にある表に基づく他のスキーマ内のマテリアライズド・ビューは削除されません。ただし、実表は存在しないため、他のスキーマ内のマテリアライズド・ビューはリフレッシュできなくなります。

  • ユーザーのスキーマにあるすべてのトリガーは削除されます。

  • ユーザーが作成したロールは削除されません。


注意:

Oracle Databaseでは、FORCEを使用するとユーザーが所有するすべての型が削除されます。詳細は、「DROP TYPE」「FORCE」キーワードを参照してください。

ユーザーの削除の制限事項 

フラッシュバック・データ・アーカイブを使用する表がスキーマに含まれているユーザーは削除できません。まず、フラッシュバック・データ・アーカイブを無効にする必要があります。

データベース・ユーザーの削除例: 次の文は、ユーザーsidneyのスキーマ内にオブジェクトがない場合に、sidneyを削除します。

DROP USER sidney; 

sidneyのスキーマ内にオブジェクトがある場合は、次の文のようにCASCADE句を指定して、sidneyとそのオブジェクトを削除する必要があります。

DROP USER sidney CASCADE;