「DBってデータベースの略ですよね?」
これくらいの知識から始めた自分のDB学習を、これからDBについて
勉強するだろう人達を応援する気持ちで共有いたします。
DBを学ぶための環境
はじめに自分がDB学習した環境を記します。
- Windows10 Home 64bit
- MySQL 5.7.11
- コマンドプロンプト(書くまでもないか…)
Windows OSでMySQLのインストールを行うには、以下のページが
大変参考になります。
DBの学習といっても、SQL文法を学ぶのが大半となります。
MySQLの設定を含め、SQL文の学習で下記のサイトを参考にしました。
やることが明確に記載されているので分かりやすく有り難いです。
DBの概念
一口にDB(データベース)と言っても、DB=コレ!という単一的な
意味合いで指せるものではありません。
データベースは情報の集合体ですが、集合体制がいろいろあります。
・階層型データベース
一つの情報には必ず1つの親を持つ関係でツリー構造化されるモデルのこと。
子となる情報同士で関係をもてないため、異なる親の下に同じ子の情報がある
という重複が発生する。よくある例としては、会社の組織図を用いられる。
配属部署を兼任している人は、同じデータが存在してしまう。
・ネットワーク型データベース
一つの情報は複数の親をもてるよう網目のように繋がりあうモデルのこと。
階層型の例で同じ人のデータをそれぞれの親の下に作らなければいけなかった
状態から、一つの情報へ複数のルートからアクセスできるようになった。
一般的にデータベースといえば…リレーショナル型(関係データベース)
階層型とネットワーク型のデータベースは、データベースの構造を理解して
プログラミングをする必要があります。
つまり、ほしい情報への道のりをしっかりとプログラムしておかなければ、
情報が取得できなくなります。
これはデータベースの構造が変わるたびにプログラムの修正も必要となるため、
データの整理やシステムでの対応工数が必要になってきます。
これを解消するような構造が、一般的にデータベースと指されるリレーショナル型です。
1つの情報に複数の属性を付加させ、その纏まりを列挙させることでデータベースを構成します。
エクセルをお使いならば、親しみのある構造でしょう。
属性を列に、1つの纏まりを行で列挙するテーブル(表)で示されます。
属性や1つの纏まりにはそれぞれ呼び方があります。
属性: field(表でいうところのrow)
1つの纏まり: record(表でいうところのcolumn)
例3の図で当てはめると、
field: ID、社員名、所属、兼任
record: IDが104の人物情報、IDが105の人物情報、IDが128の人物情報
データベース商事(株)という会社(テーブル)の社員情報のデータベースです。
リレーショナル型データベースの管理
リレーショナル型データベースはRDBと略表記されます。
このRDBのデータを参照したり、追加したり、削除したりという管理をするための
システムのことをRDBMSと略記されています。正式名称は、
「リレーショナル型データベース管理システム」
(Relational Data Base Management System)
データベースの学習では、このRDBMSにMySQLを使用します。
ほかにもMicrosoft社のSQLServerやOracle社のOracle Database、IBM社のDB2といった
RDBMSがあります。
普及率が高くオープンソースで利用できるMySQLでの学習録を掲載していきます。
~序~はここまで。