ノーコードでクラウド上のデータとの連携を実現。
詳細はこちら →無償トライアル:
無償トライアルへ製品の情報と無償トライアルへ:
ADP ODBC Driver は、ODBC 接続をサポートするあらゆるツールからのシームレスなADP データ連携を実現します。
使い慣れたODBC インターフェースで、自由自在にADP データの読み、書き、更新を実行できます。
古川えりか
コンテンツスペシャリスト
インターネット上には、膨大な数のPostgreSQL クライアントが存在します。標準ドライバーからBI、Analytics ツールまで、PostgreSQL はデータアクセス用の一般的なインターフェースです。 ODBC Drivers に含まれるSQL Gateway を使用することで、どの標準クライアントからでも接続が可能なPostgreSQL エントリポイントを作成することができるようになります。
Windows でPostgreSQL データベースとしてADP データにアクセスするには、CData SQL Gateway およびODBC Driver for ADP、EnterpriseDB のMySQL 外部データラッパーを使用します。この記事では、外部データラッパーをVisual Studio でコンパイルして拡張機能としてインストールし、PostgreSQL Server からADP データをクエリします。
接続プロパティが未設定の場合は、まずデータソースのODBC DSN で設定します。これはドライバーインストール時の最後の手順にあたります。Microsoft ODBC データソースアドミニストレーターを使ってODBC DSN を作成および設定できます。
Connect to ADP by specifying the following properties:
The connector uses OAuth to authenticate with ADP. OAuth requires the authenticating user to interact with ADP using the browser. For more information, refer to the OAuth section in the Help documentation.
MySQL リモートサービスは、クライアントからのMySQL 接続の受信を待機するデーモンプロセスです。CData SQL Gateway でMySQL リモートサービスを構成するには、SQL Gateway の概要にあるセットアップガイド を参照してください。
外部データラッパー(FDW)は、PostgreSQL を再コンパイルすることなく拡張機能としてインストールできます。Unix ベースのシステムでPostgreSQL を実行している場合、PostgreSQL Extension Network(PGXN)を使用してFDW(mysql_fdw)をインストールできます。Windows でPostgreSQL を実行している場合は、拡張機能をコンパイルして最新バージョンを使用していることを確認してください。以下のステップに従って、Visual Studio から拡張機能を構築するのに必要な編集を行います。
外部データラッパーを構築するために、以下を行います。
必要なソフトウェアとソースコードを取得したら、Visual Studio で拡張機能をコンパイルする準備ができました。以下のステップに従い、mysql_fdw ソースを使用してプロジェクトを作成します。
以下のステップに従ってプロジェクトを構成します。
以下のステップに従って必要な依存関係を追加します。
postgres.lib
libmysql.lib
WS2_32.lib
Secur32.lib
さらに、「Inherit From Parent」または「Project Defaults」がチェックされていることを確認します。
MyMySQLConnectorCInstallation\include
MyPostgreSQLInstallation\MyPostgreSQLVersion\include\server\port\win32_msvc
MyPostgreSQLInstallation\MyPostgreSQLVersion\include\server\port\win32
MyPostgreSQLInstallation\MyPostgreSQLVersion\include\server
MyPostgreSQLInstallation\MyPostgreSQLVersion\include
プロジェクトを設定したら、Visual Studio でmysql_fdw を構築するために以下の変更を加えます。
#define dlsym(lib, name) (void*)GetProcAddress((HMODULE)lib, name)
#define dlopen(libname, unused) LoadLibraryEx(libname, NULL, 0)
mysql_dll_handle = dlopen(_MYSQL_LIBNAME, RTLD_LAZY | RTLD_DEEPBIND);
mysql_dll_handle = dlopen("libmysql.dll", 0);
__declspec(dllexport) extern Datum mysql_fdw_handler(PG_FUNCTION_ARGS);
__declspec(dllexport) extern Datum mysql_fdw_validator(PG_FUNCTION_ARGS);
これで、Release 構成とビルドを選択できるようになりました。
DLL をコンパイルしたら次のステップに従って拡張機能をインストールします。
拡張機能をインストールしたら、次のステップに従ってADP データへのクエリの実行を開始します。
C:\> psql -U postgres
postgres=#CREATE EXTENSION mysql_fdw;
postgres=# CREATE SERVER ADP FOREIGN DATA WRAPPER mysql_fdw OPTIONS (host
'127.0.0.1', port '3306');
postgres=# CREATE USER MAPPING for postgres SERVER ADP OPTIONS (username
'admin', password 'test');
postgres=# CREATE SCHEMA ADP_db;
postgres=# IMPORT FOREIGN SCHEMA "CData ADP Sys" FROM SERVER ADP INTO ADP_db;
これで、ADP へのread/write コマンドを実行することができるようになりました。
postgres=# SELECT * FROM ADP_db."workers";