SQLをゼロベースで学んだ時に出会う用語まとめ
合わせて読みたい
はじめに
自分が勉強するときにつかった図書は
スッキリわかる SQL 入門 ドリル215問付き!
です。
とてもわかり易い。これを用いながら
メモしてあった文法一覧。
これからSQLを勉強される方は
ぜひご一読ください。とても
わかりやすいです。
用語
SQL
Structured Query Language
【特徴】
・命令自体は単純で、数も少ない
・修飾語をつけることで複雑な処理も可能
RDB
Relational Database
複数の表の形式でデータを管理すること
DBMS
Database Management System
SQLを送る相手。SQLの内容にしたがって
データベースファイルの内容を検索したり、
書き換えたりする処理を実行してくれる。
DML
Data Manipulation Language
SELECT, UPDATE, DELETE, INSERTを
4大命令と呼ぶことも。
主キー(primary key)
一意に決定される、重複のないキー。
インデックス番号や社員番号など。
特徴は
・必ず何かのデータが格納されている(NULLではない)
・ほかの行と値が重複し無し。
これが必要とされる理由は
・完全に重複した行が存在すると、そのうちのある行だけを選択するようなことができないため
したがって
・社員番号のような、もとから主キーとしての特性を有しているキー(これを自然キー/natural keyと呼ぶ)がない場合、自ら作成する必要がある
複合主キー
氏名、住所、生年月日の組み合わせによって
重複する可能性をなくすことができるような場合、
この組み合わせによる複数の列を一つの主キーとして扱うことがある。
これを「複合主キー」と呼ぶ。
NULL
データが格納されておらず、未定義の状態を「NULLが格納されている」と表現する。
NULLを判定するための条件式ては、IS NULL
とIS NOT NULL
を用いる。= NULL
では、undefined
などを含む可能性があるため、正しく判定できない。
ストアドプロシージャ/stored procedure
実行する複数のsqlをまとめ、
プログラムのようなものとして
DBMS内に保存し、データベースの
外部から呼び出すもの。
メリットは、多数のSQL文からなる
処理を一つのプロシージャにまとめることで、
ネットワークの負荷を軽減することができる。
トランザクション
DBMSに対して複数のSQL文を送る際、
1つ以上のSQL文をひとかたまりとして
扱うよう指示できるこのかたまりのこと。
特徴は、
・トランザクションの途中で、処理が中断されないようにできる
・トランザクションの途中に、他の人の処理が割り込めないようにできる
2フェーズコミット
各データベースにまたがったトランザクションの
整合性を維持するため、各データベースに対して
「確定準備」と「確定」の2段階の指示を出すこと。
エンティティ, 属性, 関係
概念設計で用いられる概念のこと。
テーブルのようなものをエンティティと呼び、
エンティティは複数の属性を有する。
ER図
ERD = Entity relation diagram
ER図を使うことで、エンティティ、属性、
リレーションを俯瞰してみることができる。
参考リンク
Mac OS X MavericksにApacheとPHPをインストールしてWebアプリの開発環境を作ってみる
http://blog.hyec.jp/2014/02/mac-os-x-mavericksapachephpweb.html
TREASURE DATA Official Quickstart Guide
http://docs.treasuredata.com/articles/quickstart
dokoQL
さいごに
かなりお勧めです!
参考図書
こちらもおすすめです。
ゼロベースでの知識がつきます。