Applies ToAccess for Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

すべての情報やデータはテーブルに保存されるため、テーブルはデータベースにとって重要なオブジェクトです。 たとえば、ビジネス用のデータベースには、サプライヤーの名前、電子メール アドレス、電話番号を格納する、"連絡先" テーブルを設定できます。 その他のデータベース オブジェクトはテーブルに非常に大きく依存するため、データベースを設計する際は必ず最初にすべてのテーブルを作成し、その後で他のオブジェクトを作成する必要があります。 Access でテーブルを作成する前に、要件を考慮し、必要になる可能性があるすべてのテーブルを決定します。 データベースの計画とデザインの概要については、「データベース設計の基本」をご覧ください。

この記事の内容

概要

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

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

  1. レコード: 特定の従業員や製品に関する情報など、特定のデータが保存されます。

  2. フィールド: 名前や電子メール アドレスなど、テーブルの主題の 1 つの側面に関するデータが保存されます。

  3. フィールド値: 各レコードには 1 つのフィールド値があります。 たとえば、Contoso, Ltd. や someone@example.com などです。

ページの先頭へ

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

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

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

1. テーブル プロパティ

2. フィールド プロパティ

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

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

データ型

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

データ型の設定

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

  • フィールドのデータ型は、[フィールド プロパティ] ウィンドウではなくテーブル デザイン グリッドで設定します。

  • フィールドのデータ型によって、フィールドが持つその他のプロパティが決まります。

  • フィールドのデータ型は、フィールドの作成時に設定する必要があります。

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

データ型の自動検出の例

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

入力内容:

Access で作成されるデータ型とフィールド:

安田

短いテキスト

http://www.contoso.com

すべての有効なインターネット プロトコル プレフィックスを使用できます。 たとえば、http://、https://、mailto: などが有効なプレフィックスです。

ハイパーリンク型

1

数値型、長整数型

50,000

数値型、長整数型

50,000.99

数値型、倍精度浮動小数点数型

50000.389

数値型、倍精度浮動小数点数型

12/67

認識される日付と時刻の形式は、ユーザー ロケールに応じて異なります。

日付/時刻型

2016 年 12 月 31 日

日付/時刻型

10:50:23

日付/時刻型

10:50 am

日付/時刻型

17:50

日付/時刻型

\1250

認識される通貨記号は、ユーザー ロケールに応じて異なります。

通貨型

21.75

数値型、倍精度浮動小数点数型

123.00%

数値型、倍精度浮動小数点数型

3.46E+03

数値型、倍精度浮動小数点数型

ページの先頭へ

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

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

  • 自社の顧客やその住所を一覧表示する顧客テーブル

  • 各アイテムの価格や画像などの情報を含め、販売する製品を一覧表示する製品テーブル

  • 顧客の注文を記録する注文テーブル

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

ページの先頭へ

キー

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

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

  • 外部キー    テーブルには 1 つまたは複数の外部キーを設定することもできます。 外部キーには、別のテーブルの主キーの値に対応する値が含まれます。 たとえば、各注文に "顧客" テーブルのレコードに対応する顧客 ID 番号が含まれる "注文" テーブルなどが考えられます。 この顧客 ID のフィールドが "注文" テーブルの外部キーになります。

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

各注文を顧客に関連付けるには、"顧客" テーブルの ID フィールドに対応する外部キー フィールドを "注文" テーブルに追加し、2 つのキー間のリレーションシップを作成します。 レコードを "注文" テーブルに追加する場合は、"顧客" テーブルの顧客 ID の値を使用します。 注文の顧客に関する情報を確認するときは、このリレーションシップを使用して "注文" テーブルのレコードと "顧客" テーブルのデータの対応関係を調べます。

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

1. 主キー。フィールド名の横のキー アイコンが目印です。

2. 外部キー。アイコンが表示されていないことに注目してください。

テーブルで表される一意のエンティティごとにフィールドの値が複数必要になると予想される場合は、フィールドを追加しないでください。 前述の例について考えると、顧客が行った注文の管理を開始する場合、各顧客は注文を複数回行うので、テーブルにフィールドを追加しません。 代わりに、注文を格納する新しいテーブルを作成し、2 つのテーブル間のリレーションシップを作成します。

ページの先頭へ

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

データを関連テーブルに分けておくと、次の利点を得ることができます。

  • 一貫性    データの各アイテムは 1 回のみ記録されるため、1 つのテーブルであいまいさや不整合が生じる可能性が低くなります。 たとえば、注文データを含むテーブルに繰り返し格納する (不整合の可能性がある) のではなく、顧客に関するテーブルに顧客の名前を 1 回のみ格納します。

  • 効率性   データを 1 か所にまとめて保存すれば、ディスク領域を節約できます。 また、テーブルのサイズが小さい方が、データをすばやく取得できます。 さらに、主題ごとに異なるテーブルを使用しないと、テーブルに null 値 (空のデータ) や重複データが生じます。 どちらも領域の浪費とパフォーマンスの低下につながる可能性があります。

  • 包含性    データベースのデザインからの方が、主題が各テーブルに適切にわけられているかどうかを容易に把握できます。

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

ページの先頭へ

関連項目

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

ヘルプを表示

その他のオプションが必要ですか?

サブスクリプションの特典の参照、トレーニング コースの閲覧、デバイスのセキュリティ保護方法などについて説明します。

コミュニティは、質問をしたり質問の答えを得たり、フィードバックを提供したり、豊富な知識を持つ専門家の意見を聞いたりするのに役立ちます。