はじめに
データベースとは膨大なデータをひとまとめにしたものであり、さらにそれらのデータを「ルールや目的に基づいて管理(整理)」したデータの集まりです。
例えば、机の上にたくさんの本や文房具が散らばっていた場合、その中から「ぺんてるの青色のボールペン」を探し出すのは時間がかかります。これをデータベースで「メーカー色ペンの種類」というルールで整理されていれば、直ぐに必要なペン(つまり情報)を探し出すことができます。
このデータベースで管理するシステムをDBMSといいます。
この章でデータベースの要点をとらえていきましょう。
データベースの種類
階層型
名前の通りデータが階層のように構成されています。 ツリー構造なんて呼んでたりします。
ある特定のデータを検索する際には常にただ一つのルートのみしか存在しないため、速度が非常に速いという利点があります。
ただ図を見るとわかるように、 社員A 重複登録になってしまってます。
速度は非常に速いものの、 データの追加や削除を行うとルートの再登録が必要になるなど、 対応できる状況や情報の編集に対して柔軟性が低いというデメリットがあります。
ネットワーク型
網の目のように要素と要素が互いにリンクする構造から、「網状のもの」を表すネットワークと名づけられました。
社員A の重複登録を避けることができるようになりました。
階層型であれば、 検索のスタート地点は最上階の限定されていましたが、
ネットワーク型では、柔軟に検索のスタート地点を設定することも可能です。
リレーショナル (関係)型
現在最も広く使われているのがリレーショナル型のデータベースです。
リレーショナルデータベースではデータを表形式で表します。
表はExcelのように行(row) と列 (column) で表されます。
この表のことをテーブル (table) とよびます。
また列にはそれぞれユーザーにわかりやすいように列名をつけます。
またリレーショナルデータベースでは、 テーブルどうしが連携 (テーブルどうしがつながっているような状態)して動く仕組みを持っています。
このようなシステムをリレーショナルデータベース管理システム(RDBMS) と呼び、RDBMSが管理するシステムのまとまりをリレーショナルデータベース(RDB)といいます。
複数のテーブルを関係付けることによって、 多彩なデータ要求に対応することが可能です。
代表的なリレーショナルデータベース(RDM)
・PostgreSQL
・MySQL
・SQLite
・Microsoft SQL server
・Oracle
・db2
今回のカリキュラムでは PostgreSQL を利用します。
SQLについて
DBのデータを操作する際に使われる言語が SQL(Structured Query Language : 構造化問い合わせ言語)です。
SQLはクエリと呼ばれる命令文で記述します。
SQLはデータベース言語としてANSIやJIS等の各機関で世界的に統一されているため、基本的にどの RDBMSでも使用できます。
補足
・ANSI
アメリカ工業規格の標準化を行う機関。
世界的に影響力のある標準化機関の一つで、 ANSIで標準化された規格がそのまま世界的に利用されたりします。
・JIS
日本の工業規格の標準化を行う機関。
工業標準化法に基づき、 主務大臣が制定する工業標準であり、 日本の国家標準の一つである。
だからSQLはいろんなデータベースで使えるようになっているわけですね。
SQLの代表的なデータ操作命令文
各データ操作命令文の詳しい説明は、この後のカリキュラムで学んでいきましょう!
