日本語
データを入れる

主キー —— 重複させず、更新する

更新日 2026-09-04 · 約 1 分 · デスクトップ版 macOS 0.0.9 / Windows 0.0.7 に対応

表の一意キーとして列を 1 つ指名すると、以後は同じキーの再取り込み・貼り付け・同期が、行を増やすのではなくその行を更新するようになります。「差分更新」と「重複なし」の裏にあるスイッチです。

このマニュアルの日本語は解説文です。アプリの画面表示は英語のため、メニュー名・ボタン名・エラーメッセージは画面どおり英語で表記し、スクリーンショットも英語画面のものを使っています。


これが解く問題

今月の受注を取り込み、来月また取り込む。キーがなければ、両方のファイルに現れる行は二重に入り、あらゆる合計が狂います。キーがあれば、2 回目の取り込みは既にある行を更新し、本当に新しい行だけを追加します。

設定する

表を開き、右上の Data Connections をクリックして、ダイアログの Set Primary Key を選びます。

Data Connections のダイアログ。New Connection と Set Primary Key
Data Connections のダイアログ。New Connection と Set Primary Key

行を identify する列(複数可)を選びます。ダイアログには何が起きるかがそのまま書いてあります。

Choosing a field will merge its content into the table's index field without altering the original field. The system retains only the latest row of identical primary keys.

二度読む価値のある結果が 3 つ。

  • 選んだ列の内容は表の 1 列目に統合されます(AA1#Primary Key 列)。元の列は変更されません。
  • キーが同じ行は最後の 1 行だけが残ります。
  • 複数列を選ぶと、その組み合わせがキーになります —— 日付 + 店舗、部品番号 + 倉庫。

正しい列の選び方

キーは行ごとに一意で、時間が経っても変わらない必要があります。

データ よいキー 理由
受注 受注番号 1 受注に 1 つ、使い回されない
店舗別日商 日付 + 店舗 1 店舗 1 日につき 1 行
入出庫 入出庫 ID 同じ部品の 2 回の移動は別の行
部品リスト 部品番号 自然なキー
勤怠 日付 + 社員番号 1 人 1 日につき 1 行

悪いキーは繰り返し現れるもの —— 顧客名、地域、ステータス。これらを選ぶと、本来別々の多数の行が黙って 1 行に潰れます。

設定後に変わること

  • 再取り込み:一致するキーは更新、新しいキーは追加。これがいわゆる差分更新です。
  • データ接続:同じ規則が効くので、元データを毎回まるごと読み直す接続でも行が増殖しなくなります。「新規レコードだけ」ではなく「現在の全量」を返す元データでは、キーは任意ではありません —— HTTP 接続を参照。
  • 自動化の、別の表へ書き込むアクションも、対象表にキーがあれば挿入ではなく更新になります。
  • ダッシュボードの「データを挿入」アクションも同様です。これがダッシュボードのボタンを「もう 1 行足す」ボタンではなく「ステータスを変える」ボタンにします。

変更・解除

別の列で設定し直せば、表のキーが張り替わります。ただしキーごとに最後の 1 行しか残らないので、重複のある列でキーを張り直すと行が潰れ、元に戻せません。切り替える前に、その列が本当に一意かを確かめてください。大事な表なら先に .tdbkバックアップを取ってください。

このページで解決しませんでしたか。ヘルプセンターを見るか、support@tabledi.com までご連絡ください。TableDI を作っている本人が読んでいます。