シノニム (SYNONYM)

シノニム とは、データベース・オブジェクトのエイリアス(別名)です。シノニムを使用することにより、長いオブジェクト名を短い別名で指定したり、スキーマ名でオブジェクト名を修飾しなければならないところをスキーマ名を省くことができるようになります。

シノニムの種類

シノニムは、次に示す2種類に分類される。

シノニムの種類
シノニムの種類 説明
プライベート・シノニム シノニムの所有者のみが使えるスキーマ・オブジェクト
パブリック・シノニム すべてのユーザが使える非スキーマ・オブジェクト

パブリック・シノニムの使用例を以下に示す。

SQL> CREATE PUBLIC SYNONYM emp FOR human_resources.employee;

SQL> SELECT * FROM emp;

シノニムに関するSQL

シノニムを操作するSQL文の一覧を以下に示す。

シノニムに関するSQL文
SQL文 説明
CREATE SYNONYM シノニムを作成する。
ALTER SYNONYM シノニムを変更する。
DROP SYNONYM シノニムを削除する。

シノニムに関する権限

シノニムに関するシステム権限の一覧を以下に示す。

シノニムに関する権限
システム権限 説明
CREATE SYNONYM 自分のスキーマにプライベート・シノニムを作成できる。
CREATE ANY SYNONYM 任意のスキーマにプライベート・シノニムを作成できる。
CREATE PUBLIC SYNONYM パブリック・シノニムを作成できる。
DROP ANY SYNONYM 任意のスキーマにあるプライベート・シノニムを削除できる。
DROP PUBLIC SYNONYM パブリック・シノニムを削除できる。

シノニムを参照するのに権限は必要ない。ただし、シノニムは他のオブジェクトへのエイリアス(別名)であるため、そのオブジェクトを参照する権限が別途必要である。

データ・ディクショナリ・ビュー

シノニムに関するデータ・ディクショナリ・ビューの一覧を以下に示す。

シノニムに関するデータディクショナリビュー
データディクショナリビュー説明
ALL_OBJECTS 現在のユーザがアクセスできるオブジェクト
ALL_SYNONYMS 現在のユーザがアクセスできるシノニム
DBA_OBJECTS すべてのオブジェクト
DBA_SYNONYMS すべてのシノニム
USER_OBJECTS 現在のユーザが所有するオブジェクト
USER_SYNONYMS プライベート・シノニム

SQL*Plusコマンド

シノニムに関するSQL*Plusコマンドの一覧を以下に示す。

シノニムに関するSQL*Plusコマンド
コマンド 説明
DESCRIBE シノニムの定義を表示する。

シノニムの定義を表示する例を以下に示す。

SQL> DESCRIBE example;