Oracleでのデータベースリンクの利用とシノニムの活用
Oracleでは、他のデータベースにアクセスする手段としてデータベースリンクがある。
データベースリンクを利用することで、他のデータベース上のテーブルに対してデータの操作を行うことができる。
データベースリンクの作成
以下のコマンドを実行することでデータベースリンクの作成ができる。
※接続先Oracleの接続名(ネットサービス名)は、”‘”(シングルクォーテーション)で囲う必要がある。
1 2 3 4 | CREATE DATABASE LINK DB_LINK --データベースリンク名 CONNECT TO USER_NAME --接続先Oracleのユーザ名 IDENTIFIED BY PASSWORD --接続先Oracleのパスワード USING 'CONNECTION_NAME' --接続先Oracleの接続名(ネットサービス名) |
尚、以下のSELECT文にてデータベースリンクの存在を確認できる。
1 | SELECT * FROM DBA_DB_LINKS |
データベースリンク先のテーブルの指定
“テーブル名@データベースリンク名”で対象テーブルにアクセスすることができる。
1 | SELECT * FROM TARGET_TABLE@DB_LINK |
シノニムを作成して簡潔にテーブルを指定
シノニムを作成することで、通常のテーブルと同じように扱うことができる。
1 2 | CREATE SYNONYM TARGET_TABLE --シノニム名 FOR TARGET_TABLE@DB_LINK --テーブル名@データベースリンク名 |
FROM句にシノニム名を指定することで、データベースリンク先のテーブルを参照できる。
1 | SELECT * FROM TARGET_TABLE |
シノニムの削除
以下のコマンドでシノニムを削除できる。
1 | DROP SYNONYM TARGET_TABLE --シノニム名 |
データベースリンクの削除
以下のコマンドでデータベースリンクを削除できる。
1 | DROP DATABASE LINK DB_LINK --データベースリンク名 |