自分用メモ
まずは四大命令をきちんと理解したい。
※参考:SQLの構文まとめ
目次
リレーショナルデータベースとは
データベースには色々な種類がある
Relational Database(RDB、リレーショナルデータベース)
という構築方法がメジャーだと言える。
RDBは複数の表(テーブル)で管理される
表にはそれぞれ名前が付いている(テーブル名)
表(テーブル)として保存された行(ワンセットの情報)と
列(情報の種類を細かく分けたもの)で管理する形式
縦の列がカラム、横の行が一人分のデータ
Excelの表のような形でデータを保存する
テーブルは行と列で構成される
1つの行(レコード)はまとまった一件のデータに対応している
列(カラム)はデータの要素に対応している
行がワンセット、列でそれぞれの内容を説明している
これがDBを扱う上で効率がいい
※参考:データベース(DB)とは?CRUDやSQL、作成方法も解説
有名なリレーショナルデータベース管理システム
・Oracle Database
・MicrosoftSQLServer
・PostgreSQL
・SQLite
・MySQL:無料で使用でき、最も広く利用されている
(以下ではMySQLを前提として解説)
DBの四大命令とは?
DBは、以下の四大命令が軸になっている
この4つはDBを扱う上では必須と言える
SELECT:検索
DELETE:消去
UPDATE:上書き
INSERT:消去
これにより詳しい指定のFROMやWHEREが
修飾語としてくっついている事もある
SELECT 氏名,年齢
FROM 社員テーブル
WHERE 社員ID=2;
SELECT(データの検索)
DBを使う上で最も利用される命令テーブルから目的のデータを指定して取得することが可能
データを検索する、データベースでは大文字小文字の区別がない
“where”はよく使われる修飾語句なので覚えておく
UPDATE(データの更新)
テーブルに存在するデータの書き換え(上書き)が可能“where”を指定しないと、
そのカラムの全要素が適応されるので注意する
DELETE(データの削除)
データの削除、どのレコードを消すかはっきりさせる基本構文は以下の通り
DELETE FROM テーブル名(+WHEREなどの修飾)
INSERT(データの追加)
テーブルに新しいレコード(行)を追加するWHERE句で追加する行は指定できず、最終行に追加される
基本構文はこちら
INSERT INTO テーブル名(列名1, 列名2)
VALUES(値1,値2)
()をカンマ,で繋げれば複数の行の追加もできる
INSERT INTO memeber(name)
VALUES(‘林’),(‘添田’),(‘青木’);
主キーと外部キーとは?
RDBの大きな特徴として、主キーと外部キーが挙げられる
「この値がわかれば唯一のレコードを特定できる」
これが主キー、テーブル作成の際に注意する
主キーの属性:必ず値がある(NOT NULL)、重複しない(UNIQUE)
「他のテーブルに設定してある主キー」のが外部キー
主キーを別のテーブルで流用する際に用いる
他のテーブルに情報を分けた時
参照したいテーブルの主キーの値を入力するのが外部キー
外部キーには、以下の2つの特性がある
①参照先のテーブルにちゃんと対応したレコードがある
②外部の主キーとなるテーブルを先に用意しないといけない
→設定出来ないから
あるデータを特定する為の手段を2つに分割している
外部キーによってデータがスリム化する
2重ではなく3重以上の構造になってる場合もある
しかし本来それはよくない
この記事へのコメントはありません。