SYNONYM(シノニム/別名)
シノニムとは表やビューなどのオブジェクトにつけた別名のことです。
この別名を付けることにより本来の名称とは異なるシノニム名でオブジェクトにアクセスすることができます。
本来のオブジェクト名を隠す目的や、他スキーマのオブジェクトの場合、オブジェクト名の前にスキーマ名を付けなければなりませんが、それをしたくない場合などにシノニムが使用されます。
シノニムの作成
シノニムの作成には、CREATE SYNONYM句を使用します。
CREATE SYNONYM構文
CREATE [ORREPLACE] [PUBLIC] SYNONYM別名
FORスキーマ名.オブジェクト名;
OR REPLACE | 同名のシノニムが既に存在した時でも、構わず上書きする場合に指定する |
PUBLIC | パブリックシノニムを作成する場合に指定する。 |
CREATE SYNONYM例文
--(例)USER1の所有するTEST_TBLというテーブルにTEST01というシノニムを作成する。
CREATE SYNONYM TEST01 FOR USER1.TEST_TBL;
シノニムを作成するためには以下の権限が必要です。
·
CREATE SYNONYM:自スキーマに作成する時
·
CREATE ANY SYNONYM:他スキーマに作成する時
·
CREATE PUBLIC
SYNONYM:パブリックシノニムを作成する時
シノニム名の変更
シノニム名を変更するには RENAME句を使用します。
RENAME構文
RENAME <旧シノニム名> TO <新シノニム名>;
PUBLICシノニムは、RENAME不可です。
RENAME例文
--(例)test_symシノニムを、my_symに名称変更する。
RENAME test_sym TO my_sym;
シノニムの削除
シノニムの削除には DROP SYNONYM句を使用します。
DROP SYNONYM構文
DROP [PUBLIC] SYNONYM <別名>;
※パラメータ「PUBLIC」は、上記をご覧ください。
DROP SYNONYM例文
--(例)シノニム(シノニム名:test_sym)を削除する。
DROP SYNONYM test_sym;