スキーマとは、データの論理構造の集合である。ひとりのユーザにつき、ひとつのスキーマを所有している。ユーザを作成すると、自動的にユーザ名と同じスキーマ名が割り当てられる。

スキーマ・オブジェクト

スキーマに所属するオブジェクトのことを スキーマ・オブジェクト と呼びます。スキーマ・オブジェクトの一覧を次に示します。

SQL文中でこれらのスキーマ・オブジェクトを指定する場合、スキーマ名とオブジェクト名をピリオド(ドット)で繋いで指定します。 たとえば、marinaというスキーマのempという表を指定するときにはmarina.empと指定します。

SELECT * FROM marina.emp

ただし、デフォルトのスキーマ(ユーザー名と同じスキーマ)に所属するスキーマ・オブジェクトの場合は、スキーマ名とピリオド(ドット)を省略することができます。 たとえば、marinaというユーザーがmarinaスキーマのempという表を指定するときには、empと指定することができます。

SELECT * FROM emp

ユーザーの所有するスキーマ・オブジェクトを確認するには、次のSQL文を実行します。

SELECT OBJECT_TYPE, OBJECT_NAME FROM USER_OBJECTS WHERE OBJECT_TYPE = 'TABLE' ORDER BY OBJECT_TYPE, OBJECT_NAME

OBJECT_TYPEには、次の値のうちいずれかを指定する。

オブジェクトタイプ
OBJECT_TYPE 説明
DATABASE LINK データベースリンク
FUNCTION ファンクション
INDEX インデックス(索引)
PACKAGE パッケージ仕様部
PACKAGE BODY パッケージ本体
PROCEDURE プロシージャ
SEQUENCE シーケンス
SYNONYM シノニム
TABLE テーブル(表)
TRIGGER トリガ
VIEW ビュー

非スキーマ・オブジェクト

非スキーマ・オブジェクトとは、データベース・オブジェクトのうち、スキーマに所属しないものである。非スキーマ・オブジェクトには、所有者という概念が無い。

非スキーマ・オブジェクトの一覧を次に示す。

スキーマに関するSQL

スキーマに関するSQLには、次のものがある。

SQL 説明
CREATE USER ユーザを作成する。
ALTER USER ユーザを変更する。
DROP USER ユーザを削除する。

スキーマに関するデータディクショナリ

スキーマに関するデータディクショナリには、次のものがある。

データディクショナリ・ビュー 説明
USER_OBJECTS ユーザが所有するスキーマ・オブジェクト