本文へスキップ
BecomeCoder

SQLのエラー · エラー11

CHECK constraint failed ― CHECK 制約の違反

CHECK で決めた条件を満たさない値を入れようとすると出ます。

出るコード

CREATE TABLE users (id INTEGER PRIMARY KEY, age INTEGER CHECK (age >= 0));
INSERT INTO users (id, age) VALUES (1, -5);   -- age は 0 以上のはず

エラーメッセージ

Runtime error: CHECK constraint failed: users

直し方

CHECK の条件を満たす値に直します。この例なら 0 以上の値を入れます。条件自体が間違っているなら CHECK の定義を見直します。