データベース基礎とは
要点
- データベース基礎とは、大量のデータを整理して安全に保存・検索するための「データの持ち方」の知識のことです。
- 代表的な考え方に「テーブル設計」「正規化」「SQL」があります。
- これらを理解すると、システムのデータ構造を読み解き、不具合や性能問題の原因を推測できるようになります。
(データを操作する言語)
ぽち先生も、毎日こんな風にデータを使っています
そもそも「データベース」とは
データベースとは、大量のデータを一定のルールに沿って整理し、コンピューターが効率よく保存・検索・更新できるようにした仕組みのことです。
多くのシステムでは、データを「表(テーブル)」の形にして管理する「リレーショナルデータベース(RDB)」が使われています。表は「行」と「列」で構成され、1件分のデータが1行、データの種類(項目)が1列に対応します。
データ
(表)
利用
ぽち先生のヒントバラバラの書類の山を、見出し付きのファイルボックスに整理し直すイメージだよ。整理しておけば「あの書類どこだっけ」と探し回らずに済むんだ。
なぜデータベースが必要か
Excelファイルやテキストファイルでもデータを保存できますが、システムの規模が大きくなるほど、次のような課題が出てきます。
データベースは、こうした「複数人・大量データ・高速アクセス」が求められる場面で力を発揮する専用の仕組みです。
テーブル・行・列という基本構造
データベースの表(テーブル)は、次の3つの言葉で説明できます。
id列(カラム)=項目1, 田中太郎, ...行(レコード)=1件分のデータusers テーブルテーブル=表そのもの「テーブル」は表そのもの、「列(カラム)」は氏名やメールアドレスといった項目の種類、「行(レコード)」は1人分・1件分のまとまったデータを指します。詳しくはテーブル設計の個別トピックで解説します。
ぽち先生のヒントクラス名簿に例えられるよ。名簿全体が「テーブル」、「氏名」「出席番号」といった項目名が「列」、1人分の記入行が「行」にあたるんだ。
主キーと外部キー:テーブル同士のつながり
1つのテーブルの中で1行を特定するための目印を「主キー」と呼びます。また、あるテーブルの主キーを別のテーブルに持たせて2つのテーブルを結びつける仕組みを「外部キー」と呼びます。
(主キー: id)
(外部キー: customer_id)
この仕組みによって、同じ顧客情報をあちこちの表に重複して書かずに、複数のテーブルを関連づけて扱えます。詳しくはテーブル設計の個別トピックで解説します。
ぽち先生のヒント図書館の「利用者番号」に似ているよ。貸出記録には利用者本人の名前をすべて書き写す代わりに「利用者番号」だけを記録して、その番号から利用者台帳を引けば詳細が分かる、という仕組みなんだ。
正規化:重複や矛盾を防ぐ整理術
1つの表にあらゆる情報を詰め込むと、同じデータを何度も書き写すことになり、更新漏れや矛盾の原因になります。「正規化」は、データを適切な単位でテーブルに分割し、こうした問題を防ぐ設計の考え方です。
(重複だらけ)
複数テーブル
ぽち先生のヒントクラス名簿と生徒の個人情報を1枚の紙にまとめず、「クラス名簿」と「生徒台帳」に分けて管理するイメージだよ。詳しくは正規化の個別トピックで解説するね。
SQL:データベースを操作する言語
SQLは、データベースに対して「探して」「追加して」「書き換えて」「削除して」と指示するための専用の言語です。
アプリケーションの裏側では、画面操作のたびにこうしたSQLがデータベースへ送られています。詳しくはSQL基礎の個別トピックで解説します。
データベースはどこで使われているか
データベースは、業務システムからスマホアプリまで、ほとんどのソフトウェアの裏側で使われています。
目には見えない部分ですが、私たちが普段使うアプリのほとんどが、裏側でデータベースにアクセスして動いています。
まとめ
データベース基礎は、テーブル・行・列という基本構造から、主キー・外部キーによるテーブル同士のつながり、重複を防ぐ正規化、そしてデータを操作するSQLまでを含む「データの持ち方」の知識です。
それぞれの仕組みは、以下の個別トピックでさらに詳しく学べます。
関連トピック: