PostgreSQL:複数のDB間でDB_LINKの使い方
PostgreSQLにはDB_LINKと呼ばれる機能があり、別のデータベースにあるテーブルにアクセスすることができます。以下は、複数のデータベース間でDB_LINKを使用する例文です。
まず、サンプルとして2つのデータベースを用意します。1つは”db1″という名前で、もう1つは”db2″という名前であるとします。
CREATE DATABASE db1;
CREATE DATABASE db2;
次に、”db1″にある”employee”というテーブルにアクセスし、その内容を”db2″にある”employee_copy”というテーブルに挿入するためのDB_LINKを作成します。
-- db1で実行
CREATE EXTENSION dblink;
SELECT dblink_connect('dbname=db2');
INSERT INTO dblink('INSERT INTO employee_copy SELECT * FROM employee') AS t;
これにより、”db1″の”employee”テーブルにあるデータが”db2″の”employee_copy”テーブルにコピーされます。DB_LINKは、異なるデータベース間でデータを共有したい場合に役立ちます。ただし、セキュリティに注意して使用する必要があります。