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;