轻松上手,快乐学习!

SQL CHECK 关键字


CHECK

CHECK 约束限制了可以放置在一个列上。


SQL CHECK CREATE TABLE

以下SQL是当创建“Persons”表时在“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')
);

SQL CHECK ALTER TABLE

要在已创建表的“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');

DROP CHECK约束

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

SQL Server / Oracle / MS Access:

ALTER TABLE Persons
DROP CONSTRAINT CHK_PersonAge;

MySQL的:

ALTER TABLE Persons
DROP CHECK CHK_PersonAge;