SQLでのテーブルに設定するキーの種類や制約
SQLのテーブルでは、格納する値に様々な制約を設けることで、変なデータを格納させないことができる。
データを格納する処理を実行する側でも制御しますが、SQL側でも制約を設けることで、より確実にデータを格納することができる。
制約の種類
NOT NULL制約
NULL値を許可しない。NOTNULLを制約することで、この列はNULL値を格納できない。
基本、データを格納する時はNULLを許可しないで、必要な時に許可するようにするのが良い。
PRIMARY KEY制約
主キー制約とも言う。これは、重複不可かつNOTNULLを満たしている場合に格納できる。
idに使われることが多く、よく使われる。
UNIQUE制約
ユニーク(一意)と言う意味で、重複を許さない。
同じデータを入れないために使う。
CHECK制約
列の値が条件に該当するかチェックする。
例えば、年齢を入れる列があったとしたら、20歳以上と言う条件を指定することで、20歳未満のデータを入れることができなくなる。
DEFAULT制約
レコードを登録する時、値を指定しなかった場合、初期値を格納する。
初期値を予め設置しておくことで、値を指定しなかった時、その設定した値を入れてくれる。
FOREIGNKEY制約
外部キー制約が設定され、別テーブルとの参照整合性を保つことができる。
別テーブルを参照したい時に使われる。
以上がSQLでの制約でした。