ExcelとAccessは、よく比較されることの多いアプリケーションです。どちらも「データを扱う」という点では似ているように見えますが、実は性質がまったく異なります。Excelは主に「表計算ソフト」、一方のAccessは「データベース管理ソフト」として、それぞれ異なる目的で使われる別ジャンルのツールなのです。
では、そもそも「データベース」とは何なのでしょうか? そして、Accessが属する「リレーショナルデータベース」と、その他のデータベースとの違いとは何なのでしょうか?
Accessを真に使いこなすためには、これらの基本的な理解が欠かせません。本記事では、リレーショナルデータベースの基礎について、わかりやすく解説していきます。
はじめに
実は誰でも無意識にデータベースに接している
実は普段の生活の中で私たちは、毎日のようにデータを扱っています。仕事で扱うデータはもちろんですが、銀行預金の残高もデータですし、SNSの投稿やネットショッピングの買い物履歴もデータです。
データベースとは、世の中にあふれているこれらのデータを「整理・管理・活用」するための仕組みなのです。
中でもAccessが属する「リレーショナルデータベース(RDB)」は、業務システムからWebサービスまで、非常に広い範囲で利用されており、データ管理の基本的な考え方とも言えます。
そもそもデータベースとは?
前述でも触れましたが、データベースを一言で表すと「データを整理して、必要に応じて取り出したり更新したりできるようにした仕組み」です。単なるデータの集まりではなく、一定のルールに従って構造化されている点が特徴です。

一定のルールに従って構造化されていれば、紙に書いた住所録や、図書館の貸出管理だって立派なデータベースです
古来から続く紙のデータベースは、現代ではデータをコンピュータ上で扱うことで、膨大な情報でも高速かつ正確に処理できるようになっています。このような処理を実行するAccessのようなアプリケーションを「データベース管理システム」といいます。(※厳密には異なりますが、詳細は後述します。)
つまり、単に「データベース」と言った場合は概念や構造、「データベース管理システム」と言った場合はアプリケーションを指す言葉だと理解していただければと思います。

よく例えられますけど、”データベース”を「箱」だとすると、”データベース管理システム”は「箱を扱うためのツール」という関係性ですね!
データベースの種類
データベースにはいくつかの種類が存在します。つまり、箱へのデータの格納方法や取り出し方に色々な方法があるということです。代表的なものを簡単にご紹介します。

下表には専門用語も出てくるので、ひとまず”こういうのがあるんだ”程度にご覧ください
| データベース種類 | 概要 |
|---|---|
| リレーショナルデータベース(RDB) | 表(テーブル)形式でデータを管理し、複数の表を関連づけて利用する仕組み。整合性や一貫性の保持に優れる |
| ドキュメント指向データベース | JSONやXML形式で記述されたドキュメント管理する |
| キーバリュー型データベース | データを「キー」と「値」の組で保存する。 |
| カラム指向データベース | 列単位でデータを保存する。 |
| グラフデータベース | ノード(点)とエッジ(線)でデータ間の関係を表現するデータ ベース。 |
「リレーショナルデータベース(Relational Database→以下(RDB)」は、最も一般的に普及しているデータベースです。別名「関係データベース」とも言われ、AccessもRDBを基調とした、データベース管理ソフトです。
一方、上表に掲げたRDB以外の4つのデータベースを総称して「NoSQL」と言います。つまり、データベースの世界では、RDBか、それ以外(NoSQL)か、という分類がされています。本ブログではAccessをメインとし、あくまでRDBを中心に触れていきますので、他にもこういったデータベースがあるんだな、という感じの理解でOKです。
リレーショナルデータベース(RDB)の概要
リレーショナルデータベース(RDB)とは
RDBは、表(テーブル)形式でデータを管理するタイプのデータベースです。1つのテーブルは、横の列(フィールド ※カラムともいいます)と縦の行(レコード)で構成され、各レコードが1つのデータ項目を表します。
下記は、Accessにおけるテーブル例です。横軸に各データの項目が並び、縦軸にデータが加えられていく、よく見る表といった感じです。

もう一つのRDBの大きな特徴は、複数のテーブルにデータを分割し、それらを特定のキーで関連付けることにより、データ重複の無い効率的なデータ構造を実現するというものです。
テーブル同士の関連付けを、Accessでは「リレーションシップ」とよび、重要な設定の一つとなっています。
下記記事では具体的なリレーションシップの概要を解説しています。
このように、RDBは、表という馴染みのある形式でデータを整理するため、構造が理解しやすく、整合性の高いデータ管理が可能になります。
リレーショナルデータベース(RDB)の用語
前項でも少し出てきましたが、データベースには多くの専門用語が使用されます。ここでは特に基本的な専門用語をご紹介します。
| 用語 | 説明 |
|---|---|
| テーブル(Table) | データを格納する表。行(レコード)と列(カラム)から構成される |
| レコード(Record) | テーブル内の1行にあたる。1件分のデータを表す |
| カラム(Column)/フィールド | テーブルの列。各レコードの項目(名前、住所など)を表す |
| 主キー(Primary Key) | 各レコードを一意に識別するためのカラム 例:顧客ID、社員番号など |
| 外部キー(Foreign Key) | 他のテーブルの主キーと結合するカラム。テーブル間を関連付ける ためのキー。 |
| リレーション(Relation) | テーブル間のつながり・関係性。通常は主キーと外部キーを用いて構築 |
| 結合(JOIN) | 複数のテーブルを関連付けて、1つの結果として取得する操作 Accessではクエリで使用する |
| 正規化(Normalization) | データの重複を排除し、整合性を高める設計手法。第1正規形〜第3正規形などの段階がある |
| 冗長性(Redundancy) | 同じデータが複数箇所に重複して存在すること。データの不整合の原因となる |
| 整合性(Integrity) | データの一貫性・正確性。主キー・外部キーなどで制約を設けて守る |
| インデックス(Index) | データの検索速度を高速化するための設定 |
| NULL(ヌル) | データが「存在しない」または「不明」であることを示す特別な値 |
| トランザクション(Transaction) | 一連の処理をまとめて「成功か失敗か」で完結させる仕組み。 例:銀行口座からの「出金」と「口座への出金記録処理」 |

どれも様々なところで出てくる用語ですね!この機会に覚えておきましょう
RDBにおけるデータベース管理システムの種類
ここまで説明したRDBを、実際に業務等で運用するためには、データベース管理システム(RDBMS: Relational Database Management System)が必要になります。世の中には用途や規模に応じて、実に様々なシステムが存在します。
私たちが使用するのはAccessですが、将来的にAccessでは対応できない規模のデータを取り扱う必要が出てくる可能性もあるでしょう。そういった観点からも主要なRDBMSを把握しておきましょう。
商用RDBMS(企業向け、大規模・高機能)
主に企業向けの大規模なデータベースに使用される。サーバー上で稼働し、多人数の同時使用に耐えられる、堅牢なデータ保持が特徴。コストは高額。
- Oracle Database
商用RDBMSの代名詞。非常に高機能で大規模基幹システム向け。 - Microsoft SQL Server
中〜大規模業務アプリで多く利用され、Windowsとの親和性が高い。 - IBM Db2
金融・保険など信頼性重視の現場で根強い。拡張性が高い。
オープンソースRDBMS(自由に利用可能)
ソースコードが公開されている無償で利用できるデータベース管理システム。機能的には商用RDBMSと遜色ないが、自由に使える分サポートは無いので、技術面のハードルが高い。
- MySQL
世界で最も使われているRDBMSのひとつ。軽量・高速が特徴で、Webサービスとの相性が良い。Oracle社が保有している。 - PostgreSQL
標準SQLへの準拠度が高く、トリガやビューなどの高度な機能が使え、開発用でも人気がある。 - MariaDB
MySQLから派生したデータベース管理システム。MySQLと高い互換性がある。

このブログの記事データは、MySQLに格納されているよ!
クラウド型RDBMS(運用不要のマネージドサービス)
自社で独自のサーバ構築が不要な分、技術的にも初期コスト的にも優れているサービスでありながら、従来のRDBMSの機能やSQL互換を維持しつつ、管理の手間を最小限にして本来のアプリ開発や業務に集中できる点が最大の魅力。
- Azure SQL Database(Microsoft)
SQL Serverがベースのサービス - Amazon RDS(Amazon)
MySQL、PostgreSQL、MariaDB、Oracle Database、SQL Serverなどをベース(選択可能)としたサービス - Cloud SQL(Google)
MySQL、PostgreSQL、SQL Serverなどをベース(選択可能)としたサービス
ローカル型RDBMS(ファイルベースの軽量DB)
専用のDBサーバーソフトを必要とせず、ひとつのファイルで完結するデータベースです。
- Microsoft Access
Accessは、データベースとアプリケーション開発機能が一体となったPC向けの統合アプリケーションとして、手軽にリレーショナル型のデータベースを利用できることが特徴です。複数ユーザーによる同時アクセスは制限がありますが、小規模システムには最適です。 - SQLite
軽量・高速、組み込み用途に最も使われ、Webやスマホアプリにも標準で搭載されている

上記説明でもわかる通り、Accessは厳密にはデータベース管理システムではなく、PCソフトの一つです(Microsoft Officeを構成するアプリケーションの一つ)。
作成したDBはあくまで「ファイル」ですが、データベースの形式は紛れもなくRDBです。

Accessはアプリ開発ツールとしての側面もありますから、DB部分はSQL Server、フォーム画面はAccessといったような組み合わせも可能ですし、そうなれば活用範囲も広がりますね!
まとめ
今回はAccessに限った内容ではなく、データベース全体に関するより根底的な内容でしたが、今後Accessを習得していくうえでも非常に重要なテーマです。
最後にリレーショナルデータベースの特徴をまとめます。
- 整合性の高さ:テーブルの正規化やデータの矛盾を防ぐ制約(主キー、外部キー)を駆使することで、データの一貫性及び整合性を高められる。
- 標準化された操作言語(SQL):SQLという操作言語は多くのRDBで共通して使用でき、親和性が高い。



