投稿

4月, 2016の投稿を表示しています

PostgreSQLのOracle Foreign Data WrapperをWindowsで使う

はじめに Oracle DatabaseにWindows上のMicrosoft ExcelからVBAでアクセスしたい。 個々の端末にODBCデータソースを設定するのはスクリプトで可能かもしれないが、面倒なのでADOとOLEDBの組み合わせでアクセスすることを考えている。 しかし、Oracle Instant Clientをアクセスする全ての端末にインストールするのは現実的ではない場合があると思う。 この場合のアクセスは読み取り専用であって、select文以外を処理できる必要はない。 そこで、PostgreSQLのOracle Foreign Data Wrapper Extensionを使って、PostgreSQL上にOracleのテーブルとビューを透過的に作成して、PostgreSQLのOLEDB Providerを端末にインストールし、OLEDBで参照するようにしたい。 つまり、Oracle同士でのDATABASE LINKのようなことをやりたい。 今回は理由があって最終的な環境では、サーバーはWindows Server 2012 R2 Standard (64-bit)で決まっている。 なので、全てWindows上で処理しなくてはならない。 空いているWindows環境がこれしかないと言う理由で、Windows 10 Home (64-bit)を使うことにした。 Oracle DatabaseとしてもOracle Database Express Edition 11g Release 2を新規にローカルにインストールして使うことにした。 PostgreSQLは9.5.2を使用し、これも新規にローカルにインストールして使う。 Oracle Databaseの準備 この記事を執筆している時点では、最新のOracle Express Editionは、Oracle Database Express Edition 11g Release 2である。 12系列のExpress Editionは存在していないようである。 Oracle Express Edition 11g Release 2Downloadsページより、x86_64のWindows用のバイナリーと言うことで、Oracle Database Express Edition 11g Releas…