ODBC を介してNode.js からExcel Online データをクエリ

詳細情報をご希望ですか?

無償トライアル:

ダウンロードへ

製品の詳細情報へ:

Excel Online ODBC Driver

Excel Online ODBC Driver は、ODBC 接続をサポートするさまざまなアプリケーションからExcel Online データへの接続を実現するパワフルなツールです。

標準のODBC ドライバーインターフェースを使用して、データベースのようにExcel Online スプレッドシートデータにアクセスし、データの読み、書き、更新を実行できます。



node-odbc を使用して、Node.js からExcel Online データへのSQL クエリを実行します。

Node.js はブラウザ上以外でJavaScript コードを使用できるJavaScript ランタイム環境です。CData ODBC Driver for Excel Online を使用すれば、Node.js アプリとスクリプトから、ライブExcel Online データにアクセスできます。この記事ではnode-odbc のインストールと、ライブExcel Online データへのアクセスが可能な、シンプルなNode.js アプリケーションを作成するために必要なツールについて説明します。

ビルトインの最適化されたデータ処理により、CData ODBC Driver は比類のないパフォーマンスで、Node.js のライブExcel Online データとやりとりできます。Node.js からExcel Online に複雑なSQL クエリを発行すると、ドライバーはフィルタや集計などのサポートされているSQL 操作をExcel Online に直接プッシュし、組み込まれたSQL エンジンを利用してサポートされていない操作(主にSQL 関数とJOIN 操作)をクライアント側で処理します。

Excel Online データに接続する

必要な接続プロパティの値が未入力の場合には、データソース名(DSN)で入力します。組み込みのMicrosoft ODBC Data Source Administrator を使用し、DSN を構成できます。ドライバーのインストールの最後にアドミニストレーターが開きます。Microsoft ODBC データソースアドミニストレーターを使ってDSN を作成および設定する方法は、ヘルプドキュメントの「はじめに」を参照してください。

ワークブックに接続するには、Excel Online への認証を提供し、 次のプロパティを設定します。

  • Workbook: ワークブックの名前かId に設定。利用可能なワークブックに関する情報のリストを表示する場合は、認証後にWorkbooks ビューに対してクエリを実行します。

  • UseSandbox: Sandbox アカウントのワークブックに接続している場合はtrue に設定。それ以外の場合は、これを空のままにしてプロダクションアカウントに接続します。

OAuth 認証を使うこともできます。ユーザー資格情報の接続プロパティを設定せずに接続できます。接続すると、本製品はデフォルトブラウザでOAuth エンドポイントを開きます。ログインして、本製品にアクセス許可を与えます。本製品がOAuth プロセスを完了します。 他のOAuth 認証フローについては、ヘルプドキュメントの「OAuth 認証の使用」を参照してください。

node-odbc を構築する

CData ODBC Driver を介してExcel Online に接続するには、必要なツールをインストールした後に、node-odbc を手動で構築する必要があります。

必要なツールをインストールする

以下のコマンドでは、node-odbc の構築に必要なツールをインストールします。(ツールをグローバルにインストールする-g パラメータに注意してください。)

npm i -g windows-build-tools
npm i -g node-gyp

node-odbc を構築する

必要なツールをインストールしたらNode.js アプリケーションのディレクトリを作成し、Node.js スクリプトで使用するバイナリを構築するodbc をインストールします。

mkdir nodeodbc
cd nodeodbc
npm i -g node

Node.js からExcel Online をクエリ

ODBC Driver がインストールされ、DSN が構成されて、node-odbc が構築されたら、Node.js アプリケーションからライブExcel Online データをクエリすることができるようになります。以下のサンプルコードは、特定のDSN に接続してTest_xlsx_Sheet1 テーブルをクエリします。

myscript.js

const odbc = require('odbc');

async function queryExcelOnline() {
    const connection = await odbc.connect(`DSN=CData ExcelOnline Source`);
    const data = await connection.query('SELECT Id, Column1 FROM Test_xlsx_Sheet1');
    console.log(data);
}

queryExcelOnline();

アプリケーションを作成したら、node を使用してスクリプトを実行します。

node myscript.js

CData ODBC Driver for Excel Online の30日間無償トライアルをダウンロードすればNode.js でライブExcel Online データを使用できます。ご不明な点があれば、サポートチームにお問い合わせください。