キャッシュ機能を使って、Airtable の任意のエンドポイントをSQL Server にキャッシュ同期
Airtable データをDB にコピーするニーズは多いです。例えば、データのバックアップのため、
データをDB にデータレイク的に格納して他のアプリケーションやBI、ETL ツールから連携利用するなどです。
ただし、JSON やXML 形式であったりスキーマレスなデータなどを、DB に格納できるようにスキーマ定義をしながらデータを同期することは大きな手間です。
しかも、SaaS やNoSQL などのデータはスキーマレスであったり、スキーマが頻繁に変更されます。
CData Driver 技術では、Airtable データをテーブルにモデル化し、スキーマを付与してDB にへの格納を容易にします。
本記事では、CACHE コマンドだけで、SQL Server にAirtable データの同期を取る方法を説明します。
※製品について詳しい情報をご希望の方は以下からお進みください。
- Airtable にほかのBI、ETL、開発ツールから接続したい:Airtable データ連携ガイドおよびチュートリアルのリストへ
- Airtable Drivers について詳細を知りたい:ドライバー詳細情報ページへ
- ほかのデータソースに連携したい:CData Drivers 一覧へ
- ドライバーの30日の無償トライアル版を使いたい:トライアル版ダウンロードページへ
- 製品の利用やライセンスについて相談したい:sales@cdata.co.jp までメールにてご相談ください。
同期先となるデータベースの準備
この例では、SQL Server を使います。難しい手順は不要で、SQL Server に任意の名前の新しい同期DB を作成しておくだけです。

ODBC Driver for Airtable のインストールとAirtable への接続
ODBC 接続プロパティの指定がまだの場合は、DSN (データソース名)で接続設定を行います。 Microsoft ODBC データソースアドミニストレーターを使ってODBC DSN を作成および設定できます。 ODBC ドライバーのインストール完了時にODBC DSN 設定画面が立ち上がります。 Microsoft ODBC データソースアドミニストレーターを開いて設定を行うことも可能です。 必要なプロパティを設定する方法は、ヘルプドキュメントの「はじめに」をご参照ください。
Airtable への接続には、APIKey、BaseId、TableNames のプロパティが必須です。ViewNames は任意項目でテーブルのビューを指定することができます。
- APIKey : アカウントのAPI Key。取得には、アカウントにログインして、API セクションで[Generate API Key]をクリックします。
- BaseId : ベースのId。取得には、APIKey と同じ場所で、[Airtable API]をクリックするか、https://airtable.com/api に進み、ベースを選択します。"The ID of this base is appxxN2ftedc0nEG7." というメッセージがIntroduction セッションで表示されます。
- TableNames : 選択されたベースのテーブル名のカンマ区切りのリスト。UI で見られるテーブル名と同じです。
- ViewNames : table.view 形式のビューのカンマ区切りのリスト。UI でみられるビュー名と同じです。
通常のDSN 設定に加え、キャッシュ関連項目の設定が必要です:
Cache Connection:以下をセミコロン区切りで入力
Cache Provider:SQL Server ではSystem.Data.SqlClient
Server=server name;Database=database name;User ID=your id;Password=password;

Visual Studio からキャッシュを実行
Visual Studio のサーバーエクスプローラーから「データ接続」を右クリックして「接続の追加」を選択します。
データソース選択画面で「Microsoft ODBC データソース」を選択します。

サーバーエクスプローラーには、「ODBC.Airtable.CData」というコネクションができています。 展開するとAirtable データがテーブルよびビューとしてモデル化されて表示されます。 これらのオブジェクトは通常のSQL で操作することができます。
キャッシュクエリの実行
以下のキャッシュコマンドを作成し、実行します。 実行時にクエリテキストエラーが出ても気にせず続行してください。
CACHE SELECT * FROM "Target Table"

キャッシュ結果をSQL Server で確認
データベースの下にkintone の選択したアプリが同期されています。キレイにDB 向けにスキーマも付いてます。普通にSQL でアプリケーション内で使ってください。