データベース:データを整理して素早く取り出す
データベースは、大量のデータを整理して保存し、必要な情報を素早く取り出せるしくみです。多くは 表(テーブル)の形で、行(レコード)=1件分のデータ、列(項目・フィールド)=データの種類で管理します。各行を区別する項目を 主キーといいます。
このページで学べること
- データベースが何のためにあるかがわかる
- レコード(行)と項目(列)のちがいがわかる
- 主キーの役割がわかる
- 表計算との使い分けがわかる
前提知識
- 表計算と関数
- データの整理
表・レコード・項目・主キー
データベースの基本は表(テーブル)です。横の1行が レコード(1件分のデータ)、縦の1列が 項目(フィールド)。たとえば会員の表なら、1人分が1レコード、「会員番号・氏名・住所」などが項目です。
各レコードを1つに区別する項目が主キー。会員番号のように、重複せず・空欄にならない値を選びます。氏名は同姓同名があるので主キーには向きません。
データベースは、検索(条件で探す)・並べ替え・絞り込みが得意。同じデータの重複を避けて整理することで、正確で使いやすくなります。
同姓同名の「田中一郎」さんが2人いる表を考えます。「田中一郎さんの住所を変更してください」と言われても、どちらの行を直せばよいか決められません。
だから重複せず・空欄にならない項目を1つ決めておきます。これが主キーです。会員番号が 002 と分かっていれば、直す行は必ず1つに定まります。主キーがあるからこそ「探す・直す・消す」が確実にできるのであって、飾りの項目ではありません。同じ人を2回登録してしまう事故を防げるのも、主キーが重複を許さないからです。
図でイメージする
| 会員番号(主キー) | 氏名 | 住所 |
|---|---|---|
| 001 | 佐藤 | 東京都… |
| 002 | 鈴木 | 大阪府… |
例題(くわしい手順)
例題1:主キーで1件に特定する
会員の表から、特定の1人を「探す」流れを見てみます。
- 表を用意:会員番号・氏名・住所などの項目をもつ表。
- 条件で絞る:たとえば「会員番号=002」で検索する。
- 主キー(会員番号)は重複しないので、ぴったり1件に特定できる。
- 確かめる:会員番号は重複しないので、検索結果は必ず0件か1件になります。2件出たら主キーの選び方がまちがっています。
主キーで探すと、必ず1件に決まります。だから主キーには重複しない値を選びます。
例題2:主キーに向く項目を選ぶ
学校の生徒の表を作ります。「氏名」「生年月日」「出席番号」「学籍番号」のうち、主キーに向いているのはどれですか。
- 重複しないか確かめる:氏名は同姓同名がありえます。生年月日も、同じ日の生徒がいます。
- 範囲を確かめる:出席番号はクラスの中では重複しませんが、学校全体では別のクラスと重なります。
- 残るものを選ぶ:学籍番号は学校全体で1人に1つなので、主キーに向いています。
- 確かめる:転校や改名があっても学籍番号は変わりません。変わりにくいことも主キーの大事な条件です。
主キーの条件は①重複しない ②空欄にならない ③変わりにくいの3つです。「出席番号+クラス」のように複数の項目を組み合わせて主キーにすることもできます。
表計算とデータベースの違い
| 用語 | 得意なこと | 向いている規模 |
|---|---|---|
| 表計算 | その場の計算・グラフ・集計 | 小〜中規模・個人 |
| データベース | 検索・絞り込み・複数人での管理 | 大規模・組織 |
少量の計算なら表計算、大量データを正確に管理・検索するならデータベースが向いています。
よくある間違い
氏名は同姓同名があり重複しうるので主キーに不向き。会員番号など重複しない値を使います。
主キーは各レコードを区別する値なので、空欄(未入力)にはできません。
同じ人を重複登録するとデータが矛盾します。重複を避けて整理するのがデータベースの基本です。
練習問題
まず自分で解いてから解説を開きましょう。
表の中で、各行(レコード)を1つに区別するための項目を何といいますか。
解答・解説を見る
答え:主キー
主キーは重複せず空欄にもならない値で、レコードを一意に特定します。
データベースは同時に複数人が使っても矛盾が起きないよう管理し、大量データの検索も速い設計です。表計算は少人数・小規模な集計に向きます。
つまずいたら → 「各行を1つに区別する項目が主キー」(本ページ 表・レコード・項目・主キー)に戻りましょう。
データベースの表で「1件分のデータ」にあたる横1行を何といいますか。
解答・解説を見る
同じ人を2回登録しないようにするために役立つ項目は何ですか。
解答・解説を見る
大量のデータを複数人で管理し、素早く検索したい。表計算とデータベースのどちらが向いていますか。
解答・解説を見る
答え:データベース
大規模・複数人・検索が必要な用途はデータベースが得意です。
データベースは同時に複数人が使っても矛盾が起きないよう管理し、大量データの検索も速い設計です。表計算は少人数・小規模な集計に向きます。
つまずいたら → 「主キーの条件は重複しない・空欄でない・変わりにくい」(本ページ 例題2)に戻りましょう。
よくある質問
Q. 主キーとは何ですか?
表の中で各行(レコード)を1つに区別するための項目です。会員番号のように、重複せず空欄にもならない値を使います。
Q. データベースと表計算のちがいは?
表計算は手軽な計算や小規模なデータ向き、データベースは大量のデータを複数人で管理し、素早く検索・絞り込みするのが得意です。
Q. 主キーに使ってはいけないものは何ですか?
変わる可能性がある値(氏名・電話番号・メールアドレスなど)です。1件を区別する役なので、重複せず変わらない値(会員番号など)を使います。
Q. データベースはどんなところで使われていますか?
図書館の蔵書検索、コンビニの在庫、学校の成績管理、ネット通販の注文など、たくさんのデータを正確に出し入れする場面すべてです。
次に学ぶ内容
高校「情報I」・IT基礎の範囲を参照し、オリジナルに作成(実在試験問題の転載はありません)。正確性は編集方針にそって確認しています。