Oracle Database シノニムを作成する

Oracle Database シノニムを作成する

Oracle Databaseで、シノニムを作成する手順を記述してます。「CREATE SYNONYM」にシノニム名とオブジェクト名を指定することで可能です。ここでは、実際に使用した結果を画像で掲載してます。

環境

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

手順

シノニムを作成するには、「CREATE SYNONYM」を使用します。
シノニムを使用すると、テーブルやビューに別の名前を付けて使用することができます。

CREATE SYNONYM シノニム名 FOR オブジェクト名;

実際に、以下の「FOO」というテーブルを「HOGE」という別名を付けてみます。

変更してみます。

CREATE SYNONYM HOGE FOR FOO;

これで、「FOO」を「HOGE」という別名で使用できることが可能です。

既に存在するシノニムと同じ名前のものを作成しようとするエラーになります。

次のコマンドの開始中にエラーが発生しました : 行 1 -
CREATE SYNONYM HOGE FOR FOO
エラー・レポート -
ORA-00955: すでに使用されているオブジェクト名です。
00955. 00000 -  "name is already used by an existing object"
*Cause:    
*Action:

同じ名前を作成する場合は「CREATE OR REPLACE SYNONYM」を使用します。

CREATE OR REPLACE SYNONYM HOGE FOR FOO;

全てのユーザがアクセス可能なシノニム

全てのユーザがアクセス可能なシノニムを作成するには「CREATE PUBLIC SYNONYM」を使用します。

ここでは「FOO」テーブルを全ユーザーがアクセス可能な「HUGA」テーブルという別名に変更してます。

CREATE PUBLIC SYNONYM HUGA FOR FOO;

実行結果