データベースとは何か
データベースとは、データを永続化させる仕組みのひとつ。
そもそもデータの保存方法は大きく2種類ある。
・アプリごとに管理するのが1つ
・アプリすべてをデータベースで管理するのが1つ
アプリ間でユーザ情報などが重複するのなら、一元管理した方が遥かに効率的。
☆彡データベースマネジメントシステム(DBMS)の種類
Oracle、SQL、Server、MySQL、PostgrsSQL など
データベースを使うメリット
■ユーザが同時アクセスできる数が無制限
書き込みや削除もDBMSが管理するので、不整合が起きない(※特にリレーションDBMSの機能を指す)
■ユーザのアクセス制限
権限ごとに設定できるのでセキュリティ面でも安心
■障害復旧する機能を持っている
データベースのおもなデータ構造
データ構造のモデルはいくつかあるが、
表計算みたいなリレーショナル型のデータベースが主流。
ユーザ情報や地域情報などデータテーブルを複数つくり、紐づけしておく。
1つの表にまとめて管理するのではなく、
IDを振って関連付け(リレーション)しておくという考え方。
そんで都度、必要な情報を参照したり追加したり削除したりして利用する。
おそらく、紐づけが複雑だったり重複していたりしたらデータベースのメリットがなくなるだろう。
だが得てして、当初必要だと想定したデータの概念設計、引っ張り出すパターンの論理設計は机上の妄想といえるし、
その2つをまとめたテーブル定義書で致命的なミスがあればプログラミングが泥沼化するのは想像に難くない。
SQLとは
定義・操作・制御をおこなうための構造化問い合わせ言語。
コマンドプロンプトっていう真っ黒な画面を使うから難しそう!って敬遠しがちだった。
が、実際は適当なエディタ開いて「SELECT」って打ち出すくらい気軽なものだった。
(それをコマンドプロンプトにコピペする)
先にコンピュータ概論とJavaやっておいたから、
Javaでフィールドとかクラス図とかやったし、
データベースの概念がスッと頭に入ったかも。
そのうち「ガガっとコンピュータ概論」「ガガっとJava基礎」も記事にする。