この記事では、データベースの概要 (データベースの概要、使用する理由、およびデータベースのさまざまな部分の動作) について説明します。 この用語は MicrosoftAccess データベースを対象としていますが、概念はすべてのデータベース製品に適用されます。
この記事の内容
データベースとは
データベースは、情報を収集して整理するためのツールです。 データベースには、ユーザー、製品、受注、およびその他の情報を格納できます。 多くのデータベースは、ワード プロセッシング プログラムやスプレッドシート内のリストとして開始されます。 リストが大きくなると、データに冗長性や不整合が見られ始めます。 データはリスト フォーム内で理解することが困難になり、確認のためにデータのサブセットを検索したり取り出したりする方法が限られるようになります。 これらの問題が発生し始めたら、 Accessなど、データベース管理システム (DBMS) によって作成されたデータベースにデータを転送することをお勧めします。
コンピューター化されたデータベースは、オブジェクトのコンテナーになります。 1 つのデータベースには、1 つ以上のテーブルを含めることができます。 たとえば、3 つのテーブルを使用する在庫管理システムは、3 つのデータベースではなく、3 つのテーブルを含む 1 つのデータベースです。 別のソースのデータまたはコードを使用するように特別に設計されていない限り、 Access データベースは、フォーム、レポート、マクロ、モジュールなどの他のオブジェクトと共に、そのテーブルを 1 つのファイルに格納します。 Access 2007-2016 形式で作成されたデータベース ( Microsoft 365、 Access 2024、 Access 2021、および Access 2019にも Access で使用されます)、ファイル拡張子は .accdb で、以前の Access 形式で作成されたデータベースにはファイル拡張子が.mdb。
Accessを使用すると、次のことができます。
-
新しいデータをデータベースに追加する (在庫に加えた新しい商品など)
-
データベースの既存のデータを編集する (商品の現在の場所を変更するなど)
-
情報を削除する (商品が売れた場合や廃棄された場合など)
-
さまざまな方法でデータを整理し、表示する
-
レポート、メール メッセージ、イントラネット、またはインターネットを介して他のユーザーとデータを共有する
Access データベースの部分
次のセクションでは、一般的な Access データベースの各部分について簡単に説明します。
テーブル
データベース テーブルは、データを行と列に格納するという点で、見た目はスプレッドシートに似ています。 そのため、通常、スプレッドシートはデータベース テーブルに簡単にインポートできます。 データをスプレッドシートに格納する場合とデータベースに格納する場合の主な違いは、データの編成方法にあります。
データベースの柔軟性を最大限に活用するためには、冗長性が生じないように、データをテーブル形式に編成する必要があります。 たとえば、従業員に関する情報を格納する場合、各従業員の情報は、従業員データの保存専用に設定したテーブルに 1 回入力するだけで済みます。 商品に関するデータは商品専用のテーブルに格納し、支店に関するデータは別のテーブルに格納します。 この処理を正規化と呼びます。
テーブル内の各行は、レコードと呼ばれます。 レコードは、個々の情報が格納される場所です。 各レコードは、1 つ以上のフィールドで構成されます。 フィールドは、テーブル内の列に対応します。 たとえば、"Employees" という名前のテーブルがあり、各レコード (行) には別の従業員に関する情報が含まれており、各フィールド (列) には、名、姓、住所などの異なる種類の情報が含まれている場合があります。 フィールドは、テキスト、日付または時刻、数値、またはその他の型のいずれであっても、特定のデータ型として指定する必要があります。
レコードとフィールドを表す別の方法として、図書館にある旧型式のカード カタログが思い浮かびます。 キャビネットにある個々のカードは、データベースのレコードに対応します。 個々のカード上の個々の情報ピース (著者、タイトルなど) は、データベースのフィールドに対応します。
テーブルの詳細については、「テーブルの概要」を参照してください。
フォーム
フォームには、データを入力して編集できるユーザー インターフェイスを作成できます。 多くの場合、フォームにはコマンド ボタンや、さまざまなタスクを実行する他のコントロールを含めることができます。 データベースはフォームを使わなくても作成でき、その場合はテーブル データシートでデータを編集します。 ただし、ほとんどのデータベース ユーザーは、フォームを使用してテーブルのデータを表示、入力、および編集します。
コマンド ボタンのプログラムを作成して、フォームに表示するデータを決定したり、他のフォームやレポートを開いたり、他にもさまざまなタスクを実行できます。 たとえば、"お客様フォーム" というフォームを使用して顧客データを処理するとします。 お客様フォームには注文フォームを開くボタンがあり、開いた注文フォームにその顧客の新しい注文を入力できます。
また、フォームを使用して、他のユーザーがデータベース内のデータを操作する方法を制御することができます。 たとえば、特定のフィールドだけを表示するフォームを作成し、特定の操作の実行だけを許可できます。 そのようにしてデータを保護し、データが正しく入力されるようにすることができます。
フォームの詳細については、「フォームの概要」を参照してください。
レポート
レポートは、データの書式設定、要約、表示に使用します。 レポートは通常、特定の質問に回答します。たとえば、「今年は各顧客からどのくらいの金額を受け取りましたか?」や「顧客はどの都市に配置されていますか? 各レポートは、可能な限り最も読みやすい方法で情報を表示するように書式設定できます。
レポート作成はいつでも実行でき、常にデータベースの最新のデータが反映されます。 一般にレポートは印刷出力用に書式設定しますが、画面に表示したり、別のプログラムにエクスポートしたり、メール メッセージの添付ファイルとして送信することもできます。
レポートの詳細については、Access でのレポートの 概要に関する記事を参照してください。
クエリ
クエリはデータベースで多くの異なる機能を実行できます。 最も一般的な機能は、データベースから特定のデータを取得することです。 通常、表示したいデータは複数のテーブルに分散していますが、クエリを使用するとデータを 1 つのデータシートに表示できます。 また、通常はすべてのレコードを一度に表示する必要はないので、クエリを使用すると、データを "フィルター処理" する条件を追加して必要なレコードだけを表示できます。
特定のクエリは "更新可能" です。つまり、クエリ データシートを使用して基になるテーブル内のデータを編集できます。 更新可能なクエリで作業している場合は、クエリ データシートだけでなく、実際にテーブルで変更が行われていることに注意してください。
クエリには、選択クエリとアクション クエリという 2 つの基本的な種類があります。 選択クエリは、データを取得して使用できるようにします。 クエリの結果を画面上で表示したり、出力したり、クリップボードにコピーしたりできます。 または、フォームまたはレポートのレコード ソースとしてクエリの出力を使用することもできます。
アクション クエリは、名前が示すように、データに対してタスクを実行します。 アクション クエリは、新しいテーブルの作成、既存テーブルへのデータの追加、データの更新、またはデータの削除に使用できます。
クエリの詳細については、「クエリの概要」を参照してください。
マクロ
Access の マクロは、データベースに機能を追加するために使用できる簡略化されたプログラミング言語と考えることができます。 たとえば、ボタンがクリックされるたびにマクロが実行されるように、フォーム上のコマンド ボタンにマクロをアタッチできます。 マクロには、レポートを開く、クエリを実行する、データベースを閉じるなど、タスクを実行するアクションが含まれています。 手動で実行するほとんどのデータベース操作は、マクロを使用して自動化できるため、デバイスの時間を大幅に節約できます。
マクロの詳細については、「Access プログラミングの概要」を参照してください。
モジュール
モジュール (マクロなど) は、データベースに機能を追加するために使用できるオブジェクトです。 マクロ アクションの一覧から選択して Access でマクロを作成する一方で、 Visual Basic for Applications (VBA) プログラミング言語でモジュールを記述します。 モジュールは、宣言、ステートメント、およびプロシージャのコレクションで、単位としてまとめて格納されます。 モジュールは、クラス モジュールまたは標準モジュールのいずれかにすることができます。 クラス モジュールは、フォームまたはレポートに関連付けられ、通常、関連付けられたフォームまたはレポートに固有のプロシージャが含まれます。 標準モジュールには、その他のオブジェクトに関連付けられていない一般的なプロシージャが含まれます。 標準モジュールは、ナビゲーション ウィンドウの [モジュール] に一覧表示されますが、クラス モジュールは一覧表示されません。
モジュールの詳細については、「Access プログラミングの概要」を参照してください。