SharePoint Excel Services のデータをA5:SQL Mk-2 でCRUD クエリする方法

兵藤朋代
兵藤朋代
コンテンツスペシャリスト
ODBC Driver を使ってAPI コーディングなしでSharePoint Excel Services のデータを自在にCRUD。



SQL 開発ツールといえば「A5:SQL Mk-2」が有名です。Windows ODBC に強い!というイメージです。多くのエンジニアやIT 担当者に利用されています。 本記事では、SharePoint Excel Services のデータをCData ODBC ドライバを使って、A5:SQL MK-2 からクエリする方法を説明します。

CData ODBC ドライバとは?

300種類以上の業務システムやDB をお好みのツールとノーコード連携

CData ODBC ドライバは、以下のような特徴を持つデータ連携ツールです。

SharePoint Excel Services をはじめとする、CRM、MA、会計ツールなど多様なカテゴリの300種類以上のSaaS / オンプレデータソースに対応
A5:SQL Mk-2 をはじめとする多様な帳票・BI ツールにSharePoint Excel Services のデータを連携
ノーコードでの手軽な接続設定
標準SQL での柔軟なデータ読み込み・書き込み
ベーシック認証 / OAuth 2.0 / SAML など多様な認証方式に対応
このチュートリアルではCData ODBC Drivers を使用してkintone とのデータ連携をノーコードで設定します

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

CData ODBC ドライバのインストールとSharePoint Excel Services への接続設定

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

ODBC ドライバーのインストール完了時にODBC DSN 設定画面が立ち上がります。または、Microsoft ODBC データソースアドミニストレーターを使って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 を設定して接続してください。

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

    A5:SQL Mk-2 からのSharePoint Excel Services ODBC データソースのクエリ利用方法

    ODBC DSN の利用方法

    「データベース」→「データベースの追加と削除」を開きます。

    「64bit ODBCシステムデータソースを列挙する」にチェックを入れます。システムデータソースを利用するか、ユーザーデータソースを利用するかはどちらでもかまいません。

    データベースとして、設定しているODBC DSN がツリービューで表示されます。CData ODBC ドライバで設定されたDSN もここに表示されます。

    「CData SharePoint Excel Services Sys」をダブルクリップします。データベースログイン画面が開くので、ODBC DSN 設定時に使ったSharePoint Excel Services のユーザーとパスワードでログインします。

    SharePoint Excel Services のオブジェクトがテーブル・ビュー・ストアドプロシージャにモデル化されて表示されます。

    テーブルを開いてみます。オブジェクトで利用できるデータがカラムとしてモデル化されています。それぞれのカラムにはデータ型の情報も付いています。

    これでA5:SQL Mk2 でSharePoint Excel Services のデータがクエリできます。

    SharePoint Excel Services のデータをSELECT する

    対象のテーブル・ビューを右クリックして「SQL の作成」をクリックしてクエリ作成画面を開きます。

    SELECT にチェックを入れます。とりあえず全カラムを指定して条件なしでクエリしてみます。

    SQL クエリがA5M2 から生成されます。実行ボタンで実行するとSharePoint Excel Services の選択したオブジェクトがクエリされ、データがテーブルとして返されます。

    次にフィルタリング条件を付けてみます。SQL の作成画面で「絞り込み条件に利用するカラム」をドロップダウンから選択します。以下の絞り込み条件付きのSQL 文がA5M2から生成されるので、WHERE 句に条件を書いて実行します。

        --*DataTitle "SharePoint Excel Services"."(テーブル名)"
    --*CaptionFromComment
    SELECT
      "Id"                                            -- Id
      , "LastName"                                    -- LastName
      , "FirstName"                                   -- FirstName
      , "Name"                                        -- Name
      , "Title"                                       -- Title
      , "Company"                                     -- Company
      , "Status"                                      -- Status
      , "Industry"                                    -- Industry
    FROM
      "ExcelServices"."Lead"
    WHERE
      "Company" = '(フィルタリング条件を入力)'
    

    同じ要領でSQL 作成UI から、SELECT だけでなく、INSERT、UPDATE、DELETE のクエリが作成できます。JOIN や集計クエリもANSI-92 のSQL で作れます。

    おわりに

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

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

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

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

 ダウンロード

詳細:

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

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