Oracle Database ユーザーを削除する

Oracle Database ユーザーを削除する

Oracle Databaseで、ユーザーを削除する手順を記述してます。「DROP USER」に対象のユーザー名を指定することで可能です。ここでは、実際に実行した結果を画像で掲載してます。

環境

  • OS windows11 home
  • Oracle Database 21c Express Edition
  • Oracle SQL Developer 21.2.1.204

手順

ユーザーを削除するには、「DROP USER」を使用します。

DROP USER ユーザー名;

実際に、ユーザー「bar」を削除してみます。

DROP USER bar;

削除されていることが確認できます。

「TEMPORARY TABLESPACE」で一時表領域も指定することが可能です。

CREATE USER ユーザー名
IDENTIFIED BY パスワード
DEFAULT TABLESPACE 表領域名
TEMPORARY TABLESPACE 一時表領域名;

接続中のユーザー

接続中のユーザーを削除しようとすると以下のエラーが発生して削除できません。

次のコマンドの開始中にエラーが発生しました : 行 1 -
DROP USER sampleuser
エラー・レポート -
ORA-01940: 現在接続中のユーザーを削除することはできません。
01940. 00000 -  "cannot drop a user that is currently connected"
*Cause:    Attempt was made to drop a user that is currently logged in.
*Action:   Make sure user is logged off, then repeat command.

画像

テーブルを作成したユーザー

テーブルを作成しているユーザーを削除しようと以下のエラーが発生します。

次のコマンドの開始中にエラーが発生しました : 行 1 -
DROP USER sampleuser
エラー・レポート -
ORA-01922: SAMPLEUSER'を削除するにはCASCADEを指定する必要があります
01922. 00000 -  "CASCADE must be specified to drop '%s'"
*Cause:    Cascade is required to remove this user from the system.  The
           user own's object which will need to be dropped.
*Action:   Specify cascade.

画像

削除するに「CASCADE」オプションを使用します。

DROP USER sampleuser CASCADE;