テーブルの概要

適用先
Access for Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

テーブルは、すべての情報またはデータを保持するため、データベース内の重要なオブジェクトです。 たとえば、ビジネス データベースには、サプライヤー名、電子メール アドレス、電話番号を格納する Contacts テーブルが含まれる場合があります。 他のデータベース オブジェクトはテーブルに大きく依存するため、すべてのテーブルを作成してデータベース設計を開始する必要があります。 次に、他のオブジェクトを作成します。 Access でテーブルを作成する前に、要件について考え、必要になる可能性があるすべてのテーブルを特定します。 データベースの計画とデザインの概要については、「データベース設計の基本」をご覧ください。

この記事の内容

概要

Access のようなリレーショナル データベースでは、複数の関連テーブルがあるのが一般的です。 優れたデザインのデータベースでは、特定の主題 (従業員や製品など) に関するデータがテーブルごとに格納されます。 テーブルにはレコード (行) とフィールド (列) があります。 フィールドには、テキスト、数値、日付、ハイパーリンクなど、さまざまな種類のデータが保持されます。

レコードとフィールドのレイアウトを示す、Access の Customers テーブル

  1. レコード: 特定の従業員や製品に関する情報など、特定のデータが含まれます。
  2. フィールド: テーブルの件名の 1 つの側面 (名や電子メール アドレスなど) に関するデータが含まれます。
  3. フィールド値: 各レコードには、 Contoso, Ltd.someone@example.comなどのフィールド値があります。

ページの先頭へ

テーブルとフィールドのプロパティ

またテーブルとフィールドには、その特性や動作を制御するために設定できるプロパティもあります。

テーブルとフィールドのプロパティ シート

  • テーブルのプロパティ
  • Field properties

Access データベースにおけるテーブル プロパティは、テーブル全体の外観や動作に影響を与えるテーブルの属性です。 テーブル プロパティは、デザイン ビューのテーブルのプロパティ シートで設定されます。 たとえば、テーブルの既定の表示方法を指定するには、テーブルの [既定のビュー] プロパティを設定します。

フィールド プロパティはテーブル内の特定のフィールドに適用され、フィールドのいずれかの特性や、フィールドの特定の動作を定義します。 データシート ビューでは、一部のフィールド プロパティを設定できます。 また [フィールド プロパティ] ウィンドウを使うと、デザイン ビューで好きなフィールド プロパティを設定することもできます。

データ型

すべてのフィールドにデータ型があります。 フィールドのデータ型は、大量のテキストや添付ファイルなどの、フィールドに格納されるデータの種類を示します。

データ型の設定

データ型はフィールド プロパティですが、次の点で他のフィールド プロパティとは異なります。

  • フィールドのデータ型は、[フィールド プロパティ] ウィンドウではなくテーブル デザイン グリッドで設定します。
  • フィールドのデータ型によって、フィールドに含まれるその他のプロパティが決まります。
  • フィールドのデータ型は、フィールドの作成時に設定する必要があります。

Access では、データシート ビューで新しい列にデータを入力して、新しいフィールドを作成できます。 データシート ビューにデータを入力してフィールドを作成すると、入力した値に基づいてデータ型が自動的に割り当てられます。 入力した値からテキスト型以外のデータ型が推測されない場合は、テキスト型に設定されます。 必要に応じて、リボンを使用してデータ型を変更できます。

データ型の自動検出の例

次の表に、データシート ビューでデータ型の自動検出がどのように機能するかを示します。

を入力すると、 Access では、 のデータ型を持つフィールドが作成されます。
John 短いテキスト
http://www.contoso.com ハイパーリンク型
1 数値型、長整数型
50,000 数値型、長整数型
50,000.99 数値型、倍精度浮動小数点数型
50000.389 数値型、倍精度浮動小数点数型
12/67 日付/時刻
December 31, 2016 日付/時刻
10:50:23 日付/時刻
10:50 am 日付/時刻
17:50 日付/時刻
$12.50 通貨
21.75 数値型、倍精度浮動小数点数型
123.00% 数値型、倍精度浮動小数点数型
3.46E+03 数値型、倍精度浮動小数点数型

http://https://mailto:など、任意の有効なインターネット プロトコル プレフィックスを使用できます。 Access では、ユーザーのロケールに基づいて日付、時刻、通貨の形式が認識されます。

ページの先頭へ

テーブル リレーションシップ

テーブルには、それぞれ異なる主題に関するデータが格納されますが、Access データベース内のテーブルの場合、通常は相互に関係する主題のデータが格納されます。 データベースに格納されるテーブルの一例を次に示します。

  • 会社の顧客とその住所を一覧表示する顧客テーブル。
  • 各アイテムの価格や画像などの情報を含め、販売する製品を一覧表示する製品テーブル
  • 顧客の注文を記録する注文テーブル

異なるサブジェクトに関するデータを別々のテーブルに格納するため、それらの個別のテーブルから関連するデータを簡単に結合できるように、データを結び付ける方法が必要です。 別々のテーブルに格納されているデータを関連付けるには、リレーションシップを作成します。 リレーションシップとは、2 つのテーブルに共通して含まれるフィールドを指定する、2 つのテーブル間の論理的な関連付けです。 詳細については、「テーブルのリレーションシップの概要」を参照してください。

ページの先頭へ

キー

テーブル リレーションシップの一部であるフィールドは、キーと呼ばれます。 通常、キーは 1 つのフィールドで構成されますが、複数のフィールドで構成できます。 キーは 2 種類あります。

  • 主キー: テーブルに使用できる主キーは 1 つだけです。 主キーは、テーブルに格納された各レコードを一意に識別する 1 つ以上のフィールドから成ります。 多くの場合、主キーとして機能する ID 番号、シリアル番号、コードなどの一意の識別番号があります。 たとえば、"顧客" テーブルでは、顧客ごとに一意な顧客 ID 番号が割り当てられます。 顧客 ID フィールドは、"顧客" テーブルの主キーです。 主キーに複数のフィールドが含まれている場合、通常は一意の値を提供する既存のフィールドで構成されます。 たとえば、ユーザーのテーブル用の主キーとして、姓、名、誕生日の組み合わせを使用する可能性があります。 詳細については、「テーブルの 主キーを追加または変更する」を参照してください。
  • 外部キー: テーブルには、1 つ以上の外部キーを含めることもできます。 外部キーには、別のテーブルの主キーの値に対応する値が含まれます。 たとえば、各注文に "顧客" テーブルのレコードに対応する顧客 ID 番号が含まれる "注文" テーブルなどが考えられます。 この顧客 ID のフィールドが "注文" テーブルの外部キーになります。

キー フィールド間の値の対応関係は、テーブル リレーションシップの基礎となります。 関連テーブルのデータを関連付けるには、テーブル リレーションシップを使用します。 たとえば、"顧客" テーブルと "注文" テーブルがあるとします。 "顧客" テーブルの各レコードは、主キー フィールドである ID フィールドで識別されています。

各注文を顧客に関連付けるには、"顧客" テーブルの ID フィールドに対応する外部キー フィールドを "注文" テーブルに追加し、2 つのキー間のリレーションシップを作成します。 Orders テーブルにレコードを追加する場合は、Customers テーブルから取得された顧客 ID 値を使用します。 注文の顧客に関する情報を表示する場合は常に、リレーションシップを使用して、Customers テーブルのどのデータが Orders テーブルのどのレコードに対応するかを特定します。

[リレーションシップ] ウィンドウに表示される Access のテーブル リレーションシップ

  • フィールド名の横にあるキー アイコンで識別される主キー。
  • キー アイコンなしで表示される外部キー。

テーブルで表される一意のエンティティごとにフィールドに複数の値が必要になる可能性がある場合は、フィールドを追加しないでください。 前の例を続けて、顧客が注文した注文の追跡を開始する場合は、各顧客に複数の注文があるため、テーブルにフィールドを追加しないでください。 代わりに、注文を格納する新しいテーブルを作成し、2 つのテーブル間にリレーションシップを作成します。

ページの先頭へ

リレーションシップを使用する利点

関連テーブルでデータを分離しておくことには、次の利点があります。

  • 一貫性: データの各項目は 1 つのテーブルに 1 回だけ記録されるため、あいまいさや不整合の機会が少なくなります。 たとえば、顧客の名前は、注文データを含むテーブルに繰り返し格納する代わりに、顧客に関するテーブルに 1 回だけ格納します。
  • 効率: 1 つの場所にデータを記録すると、使用するディスク領域が少なくなります。 また、テーブルが小さいほど、大きなテーブルよりもデータが迅速に提供される傾向があります。 最後に、個別のサブジェクトに個別のテーブルを使用しない場合は、null 値 (データがない場合) と冗長性がテーブルに導入されます。 どちらもスペースを無駄にし、パフォーマンスが低下する可能性があります。
  • 理解度: データベースの設計は、サブジェクトがテーブルに適切に分離されている場合に理解しやすくなります。

テーブルについて計画する場合には、リレーションシップに留意して行ってください。 対応する主キーを含むテーブルが既に存在する場合は、ルックアップ ウィザードを使用して外部キー フィールドを作成できます。 ルックアップ ウィザードでは、リレーションシップが自動的に作成されます。 詳細については、「ルックアップ フィールドを作成または削除する」を参照してください。

ページの先頭へ

関連項目

テーブルを作成してフィールドを追加する