无涯教程-SQL - CHECK Constraint函数

53 阅读1分钟

CHECK约束使条件能够检查输入到记录中的值,如果条件的计算结果为FALSE,则记录违反了约束,并且不会进入表中。

CHECK - 示例

例如,以下程序创建了一个名为Customers的新表,并添加了五列,在这里,无涯教程添加了一个Check with age列,这样您就不能有任何18岁以下的客户。

CREATE TABLE CUSTOMERS(
   ID   INT              NOT NULL,
   NAME VARCHAR (20)     NOT NULL,
   AGE  INT              NOT NULL CHECK (AGE >= 18),
   ADDRESS  CHAR (25) ,
   SALARY   DECIMAL (18, 2),       
   PRIMARY KEY (ID)
);

如果已经创建了Customers表,那么要向age列添加CHECK约束,可以编写如下所示的语句。

ALTER TABLE CUSTOMERS
   MODIFY AGE INT NOT NULL CHECK (AGE >= 18 );

还可以使用以下语法,该语法支持在多个列中命名约束以及-

ALTER TABLE CUSTOMERS
   ADD CONSTRAINT myCheckConstraint CHECK(AGE >= 18);

CHECK - 删除约束

若要删除CHECK约束,请使用以下SQL语法。此语法不适用于MySQL。

ALTER TABLE CUSTOMERS
   DROP CONSTRAINT myCheckConstraint;

参考链接

www.learnfk.com/sql/sql-che…