MySQL のFederated Table としてSharePoint Excel Services のデータを連携利用する

古川えりか
古川えりか
コンテンツスペシャリスト
SQL Gateway とODBC Driver を使ってSharePoint Excel Services のMySQL Federated Table を構築する。

SQL Gateway を使って、MySQL リモーティングサービスを作成し、SharePoint Excel Services のMySQL Federated Table を構築できます。CData ODBC Driver for ExcelServices のMySQL インターフェースのdeamon になります。サービス起動後、MySQL のFEDERATED ストレージエンジンを使ってサーバーおよびテーブルを作成します。SharePoint Excel Services のデータ をMySQL テーブルのように使いましょう。

SharePoint Excel Services のデータへの接続

If you have not already done so, provide values for the required connection properties in the data source name (DSN). You can use the built-in Microsoft ODBC Data Source Administrator to configure the DSN. This is also the last step of the driver installation. See the "Getting Started" chapter in the help documentation for a guide to using the Microsoft ODBC Data Source Administrator to create and configure a DSN.

ワークブックへの接続

どちらのSharePoint エディションをお使いでも、File を Excel ワークブックに設定してください。このパスは以下のプロパティからの相対パスになります。

  • Library:デフォルトではShared Documents ライブラリが使用されます。このプロパティを使って、組織内の別のドキュメントライブラリを指定してみてください。例えば、OneDrive for Business に接続する場合は、このプロパティを"Documents" に設定します。
  • Folder:このプロパティを使って、ライブラリ内のサブフォルダへのパスを指定できます。パスはLibrary で指定されたライブラリ名に関連します。

テーブルとしてのスプレッドシートデータへの接続

CData 製品では、基底API で利用可能なオブジェクトに基づいて、使用可能なテーブルを検出していきます。

API では異なるAPI オブジェクトを表示します。スプレッドシートの構成とSharePoint のバージョンに基づいてAPI を選択しましょう。

  • OData: OData API を使用すると、Excel で[挿入]->[テーブル]をクリックして作成されたExcel テーブルオブジェクト(範囲やスプレッドシートではありません)から定義されたテーブルにアクセスできます。OData API に接続する際、ワークブックにテーブルオブジェクトが定義されていない場合は、CData 製品がテーブルを返さないことがあります。テーブルとしてスプレッドシートまたは範囲に接続するには、UseRESTAPI をtrue に設定してください。
  • REST: REST API を使用すると、Excel テーブルオブジェクト、範囲、およびスプレッドシートから定義されたテーブルへアクセスできます。これがデフォルトの API です。範囲およびスプレッドシートから多数の行をリクエストすることは REST API によって制限されており、CData 製品では返される行数をデフォルトで 100 に制限しています。また CData 製品では、デフォルトで1行目からカラム名を検出します。これを無効にするには、Header を設定してください。

DefineTables を追加設定すると、Excel の範囲の構文を使用して、範囲に基づいてテーブルを定義できます。大きすぎる範囲は、API によって制限されます。

SharePoint オンプレミスへの接続

URL をサーバー名もしくはIP アドレスに設定しましょう。さらに、SharePointVersion と認証値を設定します。

SharePoint OnPremises を認証するには、AuthScheme を認証タイプに設定し、必要に応じてUserPassword を設定してください。

Note:SharePoint On-Premises 2010 に接続する場合は、 UseRESTAPI をtrue に設定する必要があります。

    Windows(NTLM)

    最も一般的な認証タイプです。CData 製品では NTLM をデフォルトとして使用するよう事前設定されています。Windows のUserPassword を設定して接続してください。

    その他の認証方法については、ヘルプドキュメントの「はじめに」をご覧ください。

    SQL Gateway の設定

    See the SQL Gateway Overview to set up connectivity to SharePoint Excel Services のデータ as a virtual MySQL database. You will configure a MySQL remoting service that listens for MySQL requests from clients. The service can be configured in the SQL Gateway UI.

    Creating a MySQL Remoting Service in SQL Gateway (Salesforce is shown)

    SharePoint Excel Services データのFEDERATED サーバーおよびテーブルを作成

    After you have configured and started the service, create a FEDERATED server to simplify the process of creating FEDERATED tables:

    FEDERATED サーバーの作成

    The following statement will create a FEDERATED server based on the ODBC Driver for ExcelServices. Note that the username and password of the FEDERATED server must match a user account you defined on the Users tab of the SQL Gateway.

    CREATE SERVER fedExcelServices
    FOREIGN DATA WRAPPER mysql
    OPTIONS (USER 'sql_gateway_user', PASSWORD 'sql_gateway_passwd', HOST 'sql_gateway_host', PORT ####, DATABASE 'CData ExcelServices Sys');
    

    FEDERATED テーブルの作成

    To create a FEDERATED table using our newly created server, use the CONNECTION keyword and pass the name of the FEDERATED server and the remote table (Account). Refer to the following template for the statement to create a FEDERATED table:

    CREATE TABLE fed_account (
      ...,
      name  TYPE(LEN),
      annualrevenue  TYPE(LEN),
      ...,
    )
    ENGINE=FEDERATED
    DEFAULT CHARSET=latin1
    CONNECTION='fedExcelServices/account';
    

    NOTE: The table schema for the FEDERATED table must match the remote table schema exactly. You can always connect directly to the MySQL remoting service using any MySQL client and run a SHOW CREATE TABLE query to get the table schema.

    クエリの実行

    You can now execute queries to the SharePoint Excel Services FEDERATED tables from any tool that can connect to MySQL, which is particularly useful if you need to JOIN data from a local table with data from SharePoint Excel Services. Refer to the following example:

    SELECT
      fed_account.name,
      local_table.custom_field
    FROM
      local_table
    JOIN
      fed_account
    ON
      local_table.foreign_name = fed_account.name;
    

はじめる準備はできましたか?

SharePoint Excel Services ODBC Driver の無料トライアルをダウンロードしてお試しください:

 ダウンロード

詳細:

SharePoint Excel Services Icon SharePoint Excel Services ODBC Driver お問い合わせ

Excel Services ODBC ドライバーは、ODBC 接続をサポートする任意のアプリケーションからリアルタイムなExcel Services データに接続できるパワフルなツールです。標準のODBC ドライバーインターフェースを使用して、データベースのようにSharePoint サーバーでホストされているExcel スプレッドシートデータにアクセスし、データ連携を実行できます。