Remote Oracle Database としてGMO MakeShop のデータにアクセス

Oracle Heterogenous Services を使ってOracle system からGMO MakeShop にアクセス。

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

最終更新日:2022-06-16

この記事で実現できるGMO MakeShop 連携のシナリオ

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

CData ODBC Driver for GMOMakeShop を使って、ODBC 標準をサポートするあらゆるアプリケーションからデータに連携できます。Oracle Database Gateway for ODBC は、ODBC データソースにリモートOracle データベースとして連携接続できるようにするHeterogeneous Services agent (異種サービスエージェント)です。この記事では、CData ODBC Driver for GMOMakeShop を使ってGMO MakeShop からOracle にデータベースリンクを作成する方法、およびSQL*Plus ツールを介してGMO MakeShop に連携してクエリする方法について説明します。SQL Developer からも、データベースリンクの作成およびクエリの実行ができます。

The DSN configuration window. (Salesforce is shown.)

CData ODBC ドライバとは?

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

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

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

CData ODBC ドライバのインストールとGMO MakeShop への接続設定

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

Oracle ODBC Gateway 互換性のための接続プロパティ

ドライバーには複数の接続プロパティがあり、Oracle データベースと同じようにGMO MakeShop にアクセスできます。SQL*Plus およびSQL Developer のGMO MakeShop を扱う場合は、以下のプロパティを設定します。Oracle ODBC Gateway との互換性のため、認証およびその他の必要な接続プロパティに加えて、以下の接続プロパティを設定する必要があります。

  • MapToWVarchar=False

    このプロパティをSQL_WVARCHAR の代わりにSQL_VARCHAR に設定して文字列データ型をマップします。さまざまなインターナショナルキャラクタセットに対応するため、ドライバーはデフォルトでSQL_WVARCHAR を使います。unicode タイプが返されたときに、このプロパティを使ってORA-28528 Heterogeneous Services データタイプ変換エラーを防ぐことができます。

  • MaximumColumnSize=4000

    このプロパティを設定して、カラムの最大サイズを4000文字に制限します。Oracle Database Gateway では、文字列型はカラムの最大サイズが4000である必要があります。

  • UpperCaseIdentifiers=True

    このプロパティで、識別子を引用しないようにし設定します。このプロパティを使って、大文字の識別子をOracle にレポートします。Oracle はデフォルトで識別子を大文字で格納するため、大文字の識別子を引用から避ける必要はありません。

  • IncludeDualTable=True

    このプロパティを設定して、Oracle DUAL 表をモックします。SQL Developer はこのテーブルを使って接続をテストします。

Heterogeneous Service Agent の初期化

下記の手順に従ってODBC Gateway をGMO MakeShop のデータ に作成すると、リアルタイムGMO MakeShop にOracle データベースとしてクエリすることが可能になります。

  1. 接続プロパティの指定がまだの場合は、DSN (データソース名)で行います。Microsoft ODBC データソースアドミニストレーターを使ってODBC DSN を作成および設定できます。

    GMO MakeShop に接続するには、MembersAccessCode、OrdersAccessCode、ProductsAccessCode、およびShopId が必要です。

    GMO MakeShop へのアクセスの設定

    MembersAccessCode、OrdersAccessCode、ProductsAccessCode、およびShopId を取得するには、以下の手順に従ってください。

    • GMO MakeShop には各API のAccessCode が必要です。
    • GMO MakeShop Store Manager にログインし、メニューの「ショップ作成」をクリックします。
    • 左ナビゲーションメニューの「外部システム連携」から任意の連携対象設定ををクリックします(メニューに表示されない場合は別途GMO MakeShop にご確認ください)。
    • 商品データ連携設定の場合:認証コードの「発行」ボタンをクリックし、ProductsAccessCode を取得します。
    • 注文データ連携設定の場合:最初に「注文情報参照」と「注文情報変更」の設定を選択します。選択後、認証コードの「発行」ボタンをクリックし、OrdersAccessCode を取得します。
    • 会員データ連携設定の場合:最初に「会員情報の(参照・登録・変更・削除)」の設定を選択します。選択後、認証コードの「発行」ボタンをクリックし、MembersAccessCode を取得します。
    • 会員認証連携設定の場合:認証コードの「発行」ボタンをクリックし、ProductsAccessCode を取得します。

    GMO MakeShop アカウントの認証

    次の接続プロパティを設定して接続します。

    • ShopId:接続先のGMO MakeShop Store ID を設定。GMO MakeShop Store ID はログイン用の ID と同じです。
    • OrdersAccessCode:「注文データ連携設定」から取得した「認証コード」を設定。このプロパティは Orders テーブルにアクセスする場合に必要です。
    • ProductsAccessCode:「商品データ連携設定」から取得した「認証コード」を設定。このプロパティは Products テーブルにアクセスする場合に必要です。
    • MembersAccessCode:「会員データ連携設定」から取得した「認証コード」を設定。このプロパティは Members テーブルにアクセスする場合に必要です。
    • MemberAuthenticationCode:「会員認証連携設定」から取得した「認証コード」を設定。このプロパティは MemberAuthenticationConfirm を実行する場合に必要です。
    • Password:GMO MakeShop Store Manager のログインユーザーのパスワードを指定。このプロパティは ProductCategoryRegistrationOrModification,ProductMemberGroupPriceRegistrationOrModification,ProductOptionRegistrationOrModification,ProductRegistrationOrModification を実行する場合に必要です。

    Microsoft ODBC データソースアドミニストレーターで必要なプロパティを設定する方法は、ヘルプドキュメントの「はじめに」をご参照ください。

  2. oracle-home-directory\hs\admin フォルダにinitmygmomakeshopdb.ora ファイルを作成し、以下の設定を追加します:

    HS_FDS_CONNECT_INFO = "Your-GMOMakeShop-DSN"
  3. oracle-home-directory\NETWORK\admin にあるlistener.ora ファイルに、次のアドレスを追加します:

    SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (SID_NAME = mygmomakeshopdb) (ORACLE_HOME = your-oracle-home) (PROGRAM = dg4odbc) ) )
  4. oracle-home-directory\NETWORK\admin にあるtnsnames.ora ファイルに、次の接続ディスクリプタを追加します:

    mygmomakeshopdb = (DESCRIPTION= (ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521)) (CONNECT_DATA=(SID=mygmomakeshopdb)) (HS=OK) )
  5. 次のコマンドを使って設定をテストします:

    tnsping mygmomakeshopdb
  6. SQL*Plus を起動し、次のコマンドでデータベースリンクを作成します:

    CREATE DATABASE LINK MYGMOMAKESHOPDB CONNECT TO "user" IDENTIFIED BY "password" USING 'mygmomakeshopdb';

これで、SQL*Plus で次のようなクエリを実行できます:

SELECT * from Products@mygmomakeshopdb;

GMO MakeShop からOracle Database へのデータ連携には、ぜひCData ODBC ドライバをご利用ください

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

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

関連コンテンツ

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

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