どうも、hamuです。
基本情報や応用情報で必ず出題されるデータベースについてまとめます。
この記事を読むと
- データベースがどういうものかがわかる
データベースとは
データベースとは、データを保存したり、蓄積したりするための手段の一つになります。
様々なアプリやゲーム等でデータベースが使用されています。
データベースを管理するシステムをDBMS(Database Management System)といいます。
データベースの種類
データベースと一言で言っても大きく分けて3種類存在します。
- 関係型
- 階層型
- ネットワーク型
関係型
データを表形式のテーブルで管理しています。
階層型
データを階層形式で管理しています。
ネットワーク型
データを網状形式で管理しています。
関係データベース
情報処理のデータベース分野で出題されるのは「関係データベース」です。
「関係データベース」についてどういうものか見ていきましょう。
データベースは表・行・列によって構成される
データベース内には複数の表(テーブル)を作成することができます。
また、テーブル横1列(1件分のデータ)のことをレコードやタプルと言います。
一方、縦の列のことをフィールドや属性と言います。
関係データベースの関係とは
関係とは、どういう意味でしょうか?それについて説明していきます。
クラス表というテーブルがあったとします。
クラス表には、学籍番号や名前や所属している部活のデータがまとめられているとします。
もし、サッカー部がフットサル部に変更になったらどうでしょうか。
1つずつ部活名を変更しないといけなくなります。
データの変更が数件なら問題ありませんが、数万件、数百万件かえないといけなくなったら大変です。そこで修正の漏れがあったら、修正漏れを探すだけでも大変な作業になります。
クラス表
学籍番号 | 名前 | 部活 |
0001 | 石川 太郎 | 野球部 |
0002 | 佐藤 次郎 | サッカー部 ⇒ フットサル部 |
0003 | 鈴木 三郎 | バレー部 |
0004 | 高橋 四郎 | サッカー部 ⇒ フットサル部 |
0005 | 徳永 五郎 | サッカー部 ⇒ フットサル部 |
表を下のように「クラス表」と「部活表」に分けた場合はどうでしょうか。
サッカー部からフットサル部に変更したい場合は、部活表のサッカー部をフットサル部に変更するだけになります。修正箇所は1か所だけです。
このようにデータに矛盾や重複しないように表を分割することを正規化といいます。
また、正規化については別途まとめますので、そんな言葉があったなくらいで大丈夫です。
クラス表
学籍番号 | 名前 | 部活ID |
0001 | 石川 太郎 | 01 |
0002 | 佐藤 次郎 | 02 |
0003 | 鈴木 三郎 | 03 |
0004 | 高橋 四郎 | 02 |
0005 | 徳永 五郎 | 02 |
部活表
部活ID | 部活 |
01 | 野球部 |
02 | サッカー部 ⇒ フットサル部 |
03 | バレー部 |
今回の場合、2つのテーブルの部活IDの項目が関係付けしています。
なので関係データベースと呼ばれます。
関係とは、英語でリレーションシップといいます。
なのでリレーショナルデータベース(RDB:Relational Database)とも呼ばれます。
まとめ
- データベースとは多量のデータを蓄積するための手段
- 関係データベースは複数の表が関係しあう形である
この記事があなたのお役に立てればうれしく思います。
最後までお読みいただき、ありがとうございます。
コメント