SQL CHECK 关键字使用方法及示例

SQL 关键字参考

CHECK

CHECK约束限制了可以放置在一个列中的值。

在CREATE TABLE上进行SQL CHECK

创建表"Persons"时,以下SQL在"Age"列上创建CHECK约束。CHECK约束确保您不能有18岁以下的任何人:

MySQL:

CREATE TABLE Persons
(
Age int,
CHECK (Age>=18)
);

SQL Server / Oracle / MS Access:

CREATE TABLE Persons (
    Age int CHECK (Age>=18)
);
若要命名CHECK约束,并在多个列上定义CHECK约束,请使用以下SQL语法:

MySQL / SQL Server / Oracle / MS Access:

CREATE TABLE Persons (
    Age int,
    City varchar(255),
    CONSTRAINT CHK_Person CHECK (Age>=18 AND City='Sandnes')
);

对ALTER TABLE进行SQL CHECK

要在"Age"已经创建表之后在列上创建CHECK约束,请使用以下SQL:

MySQL / SQL Server / Oracle / MS Access:

ALTER TABLE Persons
ADD CHECK (Age>=18);
若要命名CHECK约束,并在多个列上定义CHECK约束,请使用以下SQL语法:

MySQL / SQL Server / Oracle / MS Access:

ALTER TABLE Persons
ADD CONSTRAINT CHK_PersonAge CHECK (Age>=18 AND City='Sandnes');

删除 CHECK约束

要删除CHECK约束,请使用以下SQL:

SQL Server / Oracle / MS Access:

ALTER TABLE Persons
DROP CONSTRAINT CHK_PersonAge;

MySQL:

ALTER TABLE Persons
DROP CHECK CHK_PersonAge;

SQL 关键字参考