関連テーブルの操作

リレーショナルデータベースを作成すると、他のテーブルのデータを操作できるようになります。リレーショナルデータベースは、合わせて使用することで必要な情報を含む 1 つ以上の関連テーブルで構成されます。各データのインスタンスは特定のテーブルのみに保存されていますが、どの関連テーブルからもデータにアクセスして表示することができます。関連データのどのインスタンスも変更が可能で、すべての場所で変更が動的に表示されます。つまり、あるテーブルでデータを変更すると、他のどのテーブルでもそのデータが変更され、ご使用のデータは常に最新の状態になります。リレーショナルデータベースを使用すると、最新の状態のデータを操作できて効率的かつ柔軟にデータを管理できるうえ、ディスクスペースの節約にもなります。

関連テーブルからデータを取得して現在のテーブルにコピーするには、ルックアップを定義します。コピーしたデータは、コピー先のフィールドにコピーして貼り付け (ペースト) した場合と同様に、2 箇所に保存されます。ルックアップされたデータは、コピーした時点では最新の状態になりますが、一度コピーしたデータは再度ルックアップするまで固定されます。ルックアップの定義と更新を参照してください。

2 つのテーブル間の動的および静的なリレーションシップを示す概念図

たとえば、一般的な「販売」カスタム App には次のようなテーブルがあります:

  • 「顧客」テーブル: 顧客名や連絡先情報といった顧客情報を保存します。
  • 「製品」テーブル: 製品および製品の現在の価格を保存します。
  • 「品目」テーブル: 販売した品目、数量、販売価格といった請求書の各明細行の販売データを保存します。
  • 「請求書」テーブル: 各請求書のレコードを保持します (各レコードに表示される情報は、「顧客」テーブルおよび「品目」テーブルの関連レコードから取得されます)。

請求書には動的なデータと静的なデータが混在するため、関連フィールドとルックアップを使用してデータを表示します。「顧客」テーブルの関連レコードから取得したデータは「請求書」テーブルのレイアウトに動的に表示されます。「製品」テーブルから取得したデータは「品目」テーブルに表示されます。各品目の販売価格は静的で、ルックアップを使用して「品目」テーブルから「請求書」レイアウト上のポータルに入力されるため、後で「品目」テーブルの品目の価格が変更されても、請求書の合計は変わりません。

上の例を図解している「請求書」データベース

リレーショナルデータベースの構築に取りかかる前に、どのようなデータベースにするのかを先に計画しておくことが重要です。リレーショナルデータベースの計画を参照してください。

メモ 

  • これらの関連テーブルが FileMaker Pro カスタム App の他の要素とどのように連携するかについては、このページ (英語) を参照してください。
  • 関連テーブルは同じファイル内にあっても外部データソース内にあってもかまいません。