んだです。メモです。
CHECK制約??
CHECK制約を記述することで、カラムに入るデータに条件を設定できる。
例えば...
たとえば、こんなTableがあったとする。
テーブル名:sample_check_constraint
カラム名 | タイプ |
---|---|
id | increments |
start_date | date |
end_date | date |
カラムに制約を設けるなら、、
start_date < end_date
start_dateよりend_dateが遅い日時になっているように制約を設けたい
CHECK制約を書いてみる
CREATE TABLE sample_check_constraint( id int AUTO_INCREMENT NOT NULL PRIMARY KEY, start_date date NOT NULL, end_date DATE NOT NULL , CHECK (start_date < end_date) );
試してみる
↓これはOK
insert into sample_check_constraint values (1, '2019-08-01', '2019-09-30');
↓これはエラ〜
insert into sample_check_constraint values (1, '2019-10-01', '2019-09-30'); ERROR 3819 (HY000) : Check constraint 'sample_check_constraint_chk_1' is violated.
以上。