在 SQL 中,CHECK 是一种约束,用于规定列中的值必须满足的条件。CHECK 约束可确保插入或更新的数据满足指定的条件。

以下是一个示例,展示如何在创建表时使用 CHECK 约束:
CREATE TABLE employees (
    employee_id INT PRIMARY KEY,
    salary DECIMAL(10, 2) CHECK (salary >= 0),
    age INT CHECK (age >= 18)
);

在这个示例中,employees 表包含三列:employee_id、salary 和 age。salary 列和 age 列都应用了 CHECK 约束,分别规定了它们的值必须大于或等于零以及必须大于或等于 18。

如果尝试插入或更新数据,导致违反 CHECK 约束的条件,数据库将拒绝该操作并抛出错误。例如:
-- 这是有效的
INSERT INTO employees (employee_id, salary, age) VALUES (1, 50000.00, 25);

-- 这将引发错误,因为 salary 列的值小于零
INSERT INTO employees (employee_id, salary, age) VALUES (2, -1000.00, 30);

通过使用 CHECK 约束,可以确保表中的数据符合规定的条件,从而维护数据的一致性和有效性。


转载请注明出处:http://www.zyzy.cn/article/detail/14044/SQL