CData で CSV データを Airtable にアップロード



Airtable は、スプレッドシートの親しみやすさとリレーショナルデータベースの構造と柔軟性を兼ね備えたクラウドベースのコラボレーションプラットフォームです。マーケティングチームのキャンペーン計画から、プロダクトマネージャーのロードマップ管理、小売業者の在庫管理まで、幅広い業界で利用されており、データワークフローの整理、コラボレーション、自動化を柔軟に実現できます。

CData Airtable ドライバー & コネクタに、CSV データを Airtable に直接アップロードする作業を簡素化する強力な新機能 SyncCSV ストアドプロシージャが追加されました。この機能を使用すると、シンプルな T-SQL コマンドで操作でき、手動のデータ入力や複雑なスクリプトが不要になります。

この記事では、CData Airtable JDBC DriverSyncCSV ストアドプロシージャを使用し、Airtable の Sync APIBusiness または Enterprise プランでのみ利用可能)を通じて CSV データを Airtable にアップロードする方法を、人気のデータ管理ツール DBeaver を使って解説します。

前提条件

SyncCSV ストアドプロシージャを使用して Airtable JDBC Driver で CSV データを Airtable にアップロードする前に、以下の前提条件を確認してください。

  • Java JDK 8 以降がインストールされていること
  • 最新バージョンの CData Airtable JDBC Driver がインストールされていること
  • DBeaver がインストールされていること
  • Business または Enterprise プランの Airtable アカウントと適切なアクセス権があること

ストアドプロシージャを使用するための Airtable 固有の要件は以下のとおりです。

認証方式 Personal Access Token
スコープ data.records:write, schema.bases:write
ユーザーロール Base Creator
料金プラン Pro, Enterprise (pre-2023.08 legacy plan), Enterprise Scale

同期テーブルの作成

Airtable では、Sync API を使用して外部ソースからデータを自動的に取り込む同期テーブルを作成できます。CData Airtable ドライバー & コネクタを使用すると、CSV データをこれらのテーブルにプッシュし、継続的な更新を維持できます。これにより、手動アップロードや複雑なワークフローが不要になり、外部データの統合が簡素化されます。

同期テーブルを作成する手順は以下のとおりです。

  1. Airtable アカウントにログインします
  2. + Add or Import をクリックし、more sources を選択します
  3. Sync API 機能までスクロールするか、Find a source をクリックして検索します
  4. Set up をクリックして設定プロセスを開始します。Airtable が新しいテーブル用の一意の API エンドポイントを生成します
  5. 有効な Personal Access Token(PAT)がない場合は、Create a token をクリックします。
  6. 以下の必要なスコープを持つ PAT を生成します。なお、以下の base および records の read 系スコープは、ドライバーが同期テーブルからメタデータをリストしたりレコードを読み取ったりするために必要です。
    • schema.bases:read
    • schema.bases:write
    • data.records:read
    • data.records:write
  7. Airtable Sync API エンドポイントへの cURL リクエストのテンプレートを参照してください。同期テーブルを作成するには、メタデータを定義する初期リクエストを実行する必要があります(後で更新可能)。このリクエストは cURL または任意のツールやプログラミング言語で実行できます。
    • cURL でリクエストを実行する場合は、${PERSONAL_ACCESS_TOKEN} を実際の PAT に、${CSV_DATA} をサンプル CSV データに置き換えてください。
    • リクエストボディは、プレーンテキストのカンマ区切り CSV 文字列である必要があります。最初の行がヘッダー行として機能し、同期テーブルのフィールド名を定義します。フィールド名は空でなく、大文字小文字を区別せず、一意である必要があります。ヘッダー行として使用できるのは最初の行のみです。
  8. リクエストを実行した後、同期設定 UI で「✓ API request received」というメッセージが表示されて Airtable が接続を確認するのを待ち、Next をクリックします。
  9. テーブルをカスタマイズできます。
    • CSV からすべてのフィールドを選択するか、一部を選択します。
    • 各フィールドにタイプを割り当てます(例:Single line text、Long text、URL、Number)。
    • Select an option ドロップダウンを使用して、レコードを一意に識別するフィールドを選択します。これにより、Airtable が一意性に基づいてレコードを正しく更新、作成、または無視できるようになります。
    • 同期設定を構成します。
  10. テーブルの設定が完了したら、Create Table をクリックして同期テーブルを作成します。同期テーブル名の横にあるドロップダウンをクリックし、Update sync configuration を選択すると、後から同期設定を変更できます。
  11. 同期テーブルの設定で、アクティブな Sync API エンドポイントを確認できます。URL は以下の形式で表示されます:
    https://api.airtable.com/v0/{baseId}/{tableId}/sync/{syncId}

CData JDBC Driver で Airtable に接続

CData Airtable JDBC Driver は、標準的な JDBC インターフェースを通じて Airtable への接続を可能にします。この接続を確立するには、必要な認証および設定プロパティを含む JDBC URL を生成する必要があります。

JDBC URL は手動で作成することも、Airtable JDBC Driver に付属の接続文字列デザイナーを使用することもできます。

ドライバーの JAR ファイルをダブルクリックするか、コマンドラインから実行してデザイナーを起動します:

java -jar cdata.jdbc.airtable.jar

JDBC URL は jdbc:airtable: で始まり、その後にセミコロンで区切られた接続プロパティが続きます。Airtable への接続には、PersonalAccessTokenOAuthPKCE の2つの認証方法が利用できます。

認証方式として PersonalAccessToken を選択し、Token を入力します。次に Test Connection をクリックして、Airtable への接続を確認します。

詳細については、ヘルプドキュメントの「はじめに」の章を参照してください。

一般的な JDBC URL の例は以下のとおりです:

jdbc:airtable:AuthScheme=PersonalAccessToken;Token="airtable_token";

ストアドプロシージャの実行

CSV のガイドライン

SyncCSV ストアドプロシージャを使用して Airtable との同期を正常に行うには、CSV ファイルが以下のガイドラインに従っている必要があります:

サイズ制限

  • ファイルサイズ:最大 2MB
  • レコード数:最大 10,000 レコード。10,000 レコードを超える場合、最初の 10,000 レコードのみが処理されます
  • フィールド数最大 500 カラムまで。これを超えるファイルは同期に失敗します

構造

  • 値の区切り文字としてカンマを使用してください
  • 最初の行はヘッダー行として、フィールド名を定義する必要があります
  • ヘッダー行のフィールド名空でなく
  • 一意(大文字小文字を区別しない)である必要があります
  • プライマリフィールドと一意 ID がヘッダー行に存在する必要があります

DBeaver でストアドプロシージャを実行

DBeaver は、開発者やデータアナリストが統一されたインターフェースを通じて幅広いデータベースを操作するために使用するオープンソースのデータベース管理ツールです。JDBC ドライバーをサポートしているため、SQL クエリやストアドプロシージャの実行に最適です。

CData Airtable JDBC Driver を使用して Airtable に接続すると、DBeaver から直接 SyncCSV ストアドプロシージャを簡単に実行できます。このプロシージャを使用すると、CSV データを同期テーブルにアップロードでき、使い慣れた SQL 環境で高速かつスクリプト不要のデータ統合が可能になります。

DBeaver でストアドプロシージャを実行する手順は以下のとおりです:

  1. DBeaver の Driver Manager で、Airtable 用の新しいドライバーを作成します
  2. データベース接続設定で、前のセクションで Airtable JDBC Driver からコピーした JDBC URL(接続文字列)を貼り付けます
  3. 接続が完了したら、Airtable データベースを右クリックし、SQL Editor から SQL スクリプトを開いて、以下の T-SQL コマンドを入力します:
EXEC CData.BaseName.SyncCSV
@SyncTable = 'Your Sync Table Name or ID',
@SyncId = 'Your Sync API ID',
@LocalPath = 'Your Local Path for the CSV file';

例えば、以下のようになります:

このコマンドは、CData Airtable JDBC Driver に CSV ファイルのデータを指定した同期テーブルにアップロードするよう指示します。追加オプションとして、データストリームを提供したり、CSV コンテンツを Base64 エンコード文字列として直接渡したりすることもでき、データの提供方法に柔軟性があります。

Airtable で CSV コンテンツのアップロードを確認

アップロードを確認するには、Airtable アカウントに戻るか、CData ドライバーを使用してテーブルからレコードをクエリします。同期テーブルに CSV ファイルからの新しいレコードが表示されるはずです。

例えば、同期テーブルが以下のように設定され、CSV ファイルに以下のデータが含まれている場合、結果の同期テーブルは以下のように表示されます:

ID FirstName LastName Email
1 Alex Jordan alex.jordan@example.com
2 Taylor Morgan taylor.morgan@example.com
3 Casey Reed casey.reed@example.com
4 Riley Bailey riley.bailey@example.com
5 Jamie Parker jamie.parker@example.com

CSV データが Airtable にアップロードされました(以下のように表示されます):

CData で Airtable 接続を簡素化

CData Airtable ドライバー & コネクタを使用すると、お気に入りの BI、レポート、ETL ツールと Airtable を簡単に接続できます。さらに、SyncCSV ストアドプロシージャにより、CSV ファイルを Airtable に直接アップロードでき、手動の手順が不要になり、スムーズで自動化されたデータ統合が可能になります。

今すぐ始めてみませんか?CData ドライバー & コネクタ無料 30 日間トライアルをダウンロードしてください。ご不明な点がございましたら、サポートチームがいつでもお手伝いいたします。