闇鍋

趣味も勉強も全部ごった煮。質より量より継続重視

CHECK制約とかいうものを知った

CHECK制約とは

テーブルやカラムに対して条件(ルール)を設定し、その条件に合わない行の挿入・更新を防ぐことができる。

実際の使い方

たとえばcolumn1 を1~10までの範囲で制限したいとき

テーブル作成時では、

CREATE TABLE table
  (
     id INT PRIMARY KEY AUTO_INCREMENT,
     column1 INT CHECK (0 < column1 AND column1 <= 10)
);

あとから変更したい場合は、

ALTER TABLE table
MODIFY COLUMN column1 INT CHECK (0 < column1 AND column1 <= 10);

dev.mysql.com