製品をチェック

Reckon Accounts Hosted ODBC Driver の30日間無償トライアルをダウンロード

 30日間の無償トライアルへ

製品の詳細

Reckon Accounts Hosted アイコン Reckon Accounts Hosted ODBC Driver 相談したい

Reckon Accounts Hosted ODBC ドライバーは、ODBC 接続をサポートする任意のアプリケーションからリアルタイムなReckon Accounts Hosted アカウントデータに直接接続できるパワフルなツールです。標準のODBC ドライバーインタフェースを使用して、データベースのようにReckon Accounts Hosted データにアクセスし、読み、書き、更新を実行できます。

Reckon Accounts Hosted データのPostgreSQL インターフェース

SQL Gateway およびReckon Accounts Hosted ODBC Driver を使用して、データアクセス用のPostgreSQL エントリポイントを作成。

古川えりか
コンテンツスペシャリスト

最終更新日:2022-10-19

こんにちは!ドライバー周りのヘルプドキュメントを担当している古川です。

インターネット上には膨大な数のPostgreSQL クライアントが存在します。標準ドライバーからBI、Analytics ツールまで、PostgreSQL はデータアクセス用の一般的なインターフェースです。 ODBC Drivers に含まれるSQL Gateway を使用することで、どの標準クライアントからでも接続が可能なPostgreSQL エントリポイントを作成することができるようになります。

Windows でPostgreSQL データベースとしてReckon Accounts Hosted データにアクセスするには、CData SQL Gateway およびODBC Driver for ReckonAccountsHosted、EnterpriseDB のMySQL 外部データラッパーを使用します。この記事では、外部データラッパーをVisual Studio でコンパイルして拡張機能としてインストールし、PostgreSQL Server からReckon Accounts Hosted データをクエリします。

CData ODBC ドライバとは?

CData ODBC ドライバは、以下のような特徴を持ったリアルタイムデータ連携ソリューションです。

  1. Reckon Accounts Hosted をはじめとする、CRM、MA、会計ツールなど多様なカテゴリの270種類以上のSaaS / オンプレミスデータソースに対応
  2. 多様なアプリケーション、ツールにReckon Accounts Hosted データを連携
  3. ノーコードでの手軽な接続設定
  4. 標準 SQL での柔軟なデータ読み込み・書き込み

CData ODBC ドライバでは、1.データソースとしてReckon Accounts Hosted の接続を設定、2.PostgreSQL 側でODBC Driver との接続を設定、という2つのステップだけでデータソースに接続できます。以下に具体的な設定手順を説明します。

CData ODBC ドライバのインストールとReckon Accounts Hosted への接続設定

まずは、本記事右側のサイドバーからReckonAccountsHosted ODBC Driver の無償トライアルをダウンロード・インストールしてください。30日間無償で、製品版の全機能が使用できます。

接続プロパティが未設定の場合は、まずデータソースのODBC DSN で設定します。これはドライバーインストール時の最後の手順にあたります。Microsoft ODBC データソースアドミニストレーターを使ってODBC DSN を作成および設定できます。

CData 製品 はOAuth 経由でReckon Accounts Hosted にリクエストを作成します。次の接続プロパティを指定します。

  • User必須。企業ファイルのユーザー名。
  • Password必須。企業ファイルのパスワード。
  • CompanyFile: 必須。企業ファイルへのパス。
  • InitiateOAuth:アクセストークンの処理をドライバーに任せる場合はGETANDREFRESH に設定。
  • CountryVersion:デフォルトは、2021.R2.AU です。

カスタムOAuth アプリケーションを作成し、以下の追加の接続プロパティを指定することもできます。

  • SubscriptionKey:Azure Platform 上のReckon Portal から取得したAPI キー。
  • OAuthClientId:アプリケーション設定のクライアントID に設定。
  • OAuthClientSecret:アプリケーション設定のクライアントシークレットに設定。
  • CallbackURL:カスタムOAuth アプリのリダイレクトURI。

CData は、OAuth デスクトップ認証を簡略化する埋め込みOAuth アプリケーションを提供します。ほかのOAuth 認証方法(Web、ヘッドレスなど)、カスタムOAuth アプリケーションの作成、その理由などについては、ヘルプドキュメントを参照してください。

リモートサービスを開始する

MySQL リモートサービスは、クライアントからのMySQL 接続の受信を待機するデーモンプロセスです。CData SQL Gateway でMySQL リモートサービスを構成するには、SQL Gateway の概要にあるセットアップガイド を参照してください。

MySQL 外部データラッパーを構築する

外部データラッパー(FDW)は、PostgreSQL を再コンパイルすることなく拡張機能としてインストールできます。Unix ベースのシステムでPostgreSQL を実行している場合、PostgreSQL Extension Network(PGXN)を使用してFDW(mysql_fdw)をインストールできます。Windows でPostgreSQL を実行している場合は、拡張機能をコンパイルして最新バージョンを使用していることを確認してください。以下のステップに従って、Visual Studio から拡張機能を構築するのに必要な編集を行います。

前提条件を取得する

外部データラッパーを構築するために、以下を行います。

  • PostgreSQL をインストールします。この例では、インストールにPostgreSQL 9.4 を使用します。
  • PostgreSQL の64 ビットインストールを使用している場合、PostgreSQL ソースからlibintl.h を取得します。64 ビットのPostgreSQL インストーラーは、現時点ではlibintl.h を含みません。
  • mysql_fdw 外部データラッパーへのソースを、EnterpriseDB から取得します。
  • MySQL Connector C をインストールします。この例では、MySQL Connector C 6.1 を使用します。

プロジェクトを構成する

必要なソフトウェアとソースコードを取得したら、Visual Studio で拡張機能をコンパイルする準備ができました。以下のステップに従い、mysql_fdw ソースを使用してプロジェクトを作成します。

  1. Visual Studio で、新しい空のC++ プロジェクトを作成します。
  2. Solution Explorer において、「Source Files」を右クリックし、「Add」->「Existing Item」をクリックします。ファイルエクスプローラーで、mysql_fdw からすべての.c ファイルと.h ファイルを選択します。

以下のステップに従ってプロジェクトを構成します。

  1. 64 ビットシステム用に構成するには、「Build」->「Configuration Manager」とクリックし、「Active Solution Platform」で「x64」を選択します。
  2. プロジェクトを右クリックして「Properties」をクリックします。
  3. 「Configuration」メニューで「All Configurations」を選択します。
  4. 「Configuration Properties」->「General」->「Configuration Type」と進み、「Dynamic Library」を選択します。
  5. 「Configuration Properties」->「C/C++」->「Code Generation」->「Enable C++ Exceptions」と進み、「No」を選択します。
  6. 「Configuration Properties」->「C/C++」->「Advanced」->「Compile As」と進み、「Compile as C Code」を選択します。
  7. 「Linker」->「Manifest File」->「Generate Manifest」と進み、「No」をクリックします。

以下のステップに従って必要な依存関係を追加します。

  1. 「Linker」->「Input」->「Additional Dependencies」と進み、「Edit」を選択して以下を入力します。 postgres.lib libmysql.lib WS2_32.lib Secur32.lib さらに、「Inherit From Parent」または「Project Defaults」がチェックされていることを確認します。
  2. 「Linker」->「General」->「Additional Library Directories」と進み、「Edit」を選択してPostgreSQL インストールのlib フォルダへのパスを追加します。
  3. 「Linker」->「General」->「Link Library Dependencies」と進み、「No」を選択します。
  4. プロジェクトの構成を完了するために必要なものを追加します。 「C/C++」->「General」->「Additional Include Directories」と進み、フォルダを次の順で追加します。 MyMySQLConnectorCInstallation\include MyPostgreSQLInstallation\MyPostgreSQLVersion\include\server\port\win32_msvc MyPostgreSQLInstallation\MyPostgreSQLVersion\include\server\port\win32 MyPostgreSQLInstallation\MyPostgreSQLVersion\include\server MyPostgreSQLInstallation\MyPostgreSQLVersion\include

Windows 用にmysql_fdw を構成する

プロジェクトを設定したら、Visual Studio でmysql_fdw を構築するために以下の変更を加えます。

  1. mysql_fdw.c で以下の定義を追加します。 #define dlsym(lib, name) (void*)GetProcAddress((HMODULE)lib, name) #define dlopen(libname, unused) LoadLibraryEx(libname, NULL, 0)
  2. mysql_load_library の定義で、以下の行を削除します。 mysql_dll_handle = dlopen(_MYSQL_LIBNAME, RTLD_LAZY | RTLD_DEEPBIND);
  3. mysql_load_library の定義に次の行を追加して、Windows ビルド用のmysql_dll_handle の割り当てを置き換えます。 mysql_dll_handle = dlopen("libmysql.dll", 0);
  4. mysql_fdw_handler 関数を呼び出す前に__declspec(dllexport)キーワードを付けてDLL から関数をエクスポートします。 __declspec(dllexport) extern Datum mysql_fdw_handler(PG_FUNCTION_ARGS);
  5. option.c でmysql_fdw_validator 関数の宣言に__declspec(dllexport)キーワードを追加して、DLL から関数をエクスポートします。 __declspec(dllexport) extern Datum mysql_fdw_validator(PG_FUNCTION_ARGS);

これで、Release 構成とビルドを選択できるようになりました。

拡張機能をインストールする

DLL をコンパイルしたら次のステップに従って拡張機能をインストールします。

  1. MySQL Connector C のlib フォルダへのパスをPostgreSQL を実行しているマシンのPATH 環境変数に追加します。
  2. プロジェクトのRelease フォルダからPostgreSQL インストールのlib サブフォルダにDLL をコピーします。
  3. mysql_fdw csource ファイルを含むフォルダで、myswl_fdw--1.0.sql とmysql_fdw.control を、PostgreSQL インストールの共有フォルダの下にある拡張フォルダにコピーします。例:C:\Program Files\PostgreSQL\9.4\share\extension.

PostgreSQL データベースとしてReckon Accounts Hosted データをクエリする

拡張機能をインストールしたら、次のステップに従ってReckon Accounts Hosted データへのクエリの実行を開始します。

  1. PostgreSQL データベースにログインします。例: C:\> psql -U postgres
  2. データベースの拡張機能をロードします。 postgres=#CREATE EXTENSION mysql_fdw;
  3. Reckon Accounts Hosted データのサーバーオブジェクトを作成します。 postgres=# CREATE SERVER ReckonAccountsHosted FOREIGN DATA WRAPPER mysql_fdw OPTIONS (host '127.0.0.1', port '3306');
  4. MySQL リモートサービスが認識しているユーザーのユーザー名とパスワードにユーザーマッピングを作成します。以下は、サービスのサンプル構成におけるユーザーの資格情報です。 postgres=# CREATE USER MAPPING for postgres SERVER ReckonAccountsHosted OPTIONS (username 'admin', password 'test');
  5. ローカルスキーマを作成します。 postgres=# CREATE SCHEMA ReckonAccountsHosted_db;
  6. 定義したReckon Accounts Hosted データベースですべてのテーブルをインポートします。 postgres=# IMPORT FOREIGN SCHEMA "CData ReckonAccountsHosted Sys" FROM SERVER ReckonAccountsHosted INTO ReckonAccountsHosted_db;

これで、Reckon Accounts Hosted へのread/write コマンドを実行することができるようになりました。

postgres=# SELECT * FROM ReckonAccountsHosted_db."accounts";

Reckon Accounts Hosted からPostgreSQL へのデータ連携には、ぜひCData ODBC ドライバをご利用ください

このようにCData ODBC ドライバと併用することで、270を超えるSaaS、NoSQL データをコーディングなしで扱うことができます。30日の無償評価版が利用できますので、ぜひ自社で使っているクラウドサービスやNoSQL と合わせて活用してみてください。

CData ODBC ドライバは日本のユーザー向けに、UI の日本語化、ドキュメントの日本語化、日本語でのテクニカルサポートを提供しています。

関連コンテンツ

トライアル・お問い合わせ

30日間無償トライアルで、CData のリアルタイムデータ連携をフルにお試しいただけます。記事や製品についてのご質問があればお気軽にお問い合わせください。