Remote Oracle Database としてMonday.com のデータにアクセス

Oracle Heterogenous Services を使ってOracle system からMonday.com にアクセス。

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

最終更新日:2022-06-16

この記事で実現できるMonday.com 連携のシナリオ

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

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

The DSN configuration window. (Salesforce is shown.)

CData ODBC ドライバとは?

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

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

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

CData ODBC ドライバのインストールとMonday.com への接続設定

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

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

ドライバーには複数の接続プロパティがあり、Oracle データベースと同じようにMonday.com にアクセスできます。SQL*Plus およびSQL Developer のMonday.com を扱う場合は、以下のプロパティを設定します。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 をMonday.com のデータ に作成すると、リアルタイムMonday.com にOracle データベースとしてクエリすることが可能になります。

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

    Monday 接続プロパティの取得・設定方法

    Monday AuditLog API

    Monday AuditLog API は、API トークンによる認証のみをサポートしています。

    監査ログAPI トークンを生成するには:

    1. monday.com アカウントにログインします。
    2. 画面右上のアバター(画像アイコン)をクリックします。
    3. 表示されたメニューからAdministration を選択します。
    4. 左側のナビゲーションでSecurity をクリックします。
    5. Audit タブをクリックします。
    6. Monitor by API -> Copy をクリックして、AuditLog API トークンをコピーします。

    API トークンを取得した後、以下の接続プロパティを設定します。

    • Schema:"AuditLog" に設定。
    • AuthSchemeToken
    • APIToken:取得した監査ログAPI トークン
    • URL:Monday アカウントURL。ログイン後、自身のMonday ホームページのURL をコピーできます。例:https://your-account-name.monday.com/

    Monday GraphQL API

    Monday GraphQL API は、API トークンまたはOAuth 標準による認証をサポートしています。

    API トークン

    API トークンで接続するには、AuthSchemeToken に設定し、次の手順でAPIToken を取得します。

    1. monday.com アカウントにログインします。
    2. 画面右上のアバター(画像アイコン)をクリックします。
    3. 表示されたメニューからAdministration を選択します(管理者権限が必要です)。
    4. 左側のナビゲーションでConnections をクリックし、表示されたページでAPI タブをクリックします。
    5. Personal API Token で、Create token をクリックしてパーソナルAPI トークンを作成します。APIToken 接続プロパティをこの値に設定します。
      • すでにトークンを作成している場合は、Personal API TokenCopy ボタンをクリックしてAPI トークンをコピーします。APIToken 接続プロパティをこの値に設定します。

    OAuth で認証する場合は、ヘルプドキュメントの「OAuth 認証の使用」セクションを参照してください。

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

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

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

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

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

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

    CREATE DATABASE LINK MYMONDAYDB CONNECT TO "user" IDENTIFIED BY "password" USING 'mymondaydb';

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

SELECT * from Invoices@mymondaydb;

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

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

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

関連コンテンツ

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

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