当前位置: 首页 > 工具软件 > sqlcheck > 使用案例 >

SQL CHECK 约束

许毅
2023-12-01

SQL CHECK 约束

CHECK 约束用于限制列中的值得范围。

如果对单个定于的CHECK 约束,那么该列只允许特定的值。

如果对一个表定于CHECK 约束,那么此约束会基于行中其他列的值在特定的列中对值进行限制。

CREATE TABLE 时的SQL CHECK 约束

下面的SQL 在"Persons"表创建CHECK 约束。CHECK 约束规定"p_id"列必须只包含大于0的整数。

CREATE TABLE persons3
(
p_id int not null CHECK (p_id>0),
lastname varchar(255) not null,
fristname varchar(255),
address varchar(255),
city varchar(255)
)

如需命名CHECK 约束,并定义多个列的CHECK 约束,请使用下面的SQL语法:

CREATE TABLE persons30
(
p_id int not null,
lastname varchar(255) not null,
fristname varchar(255),
address varchar(255),
city varchar(255),
CONSTRAINT check_persons30 CHECK (p_id > 0 AND city = 'sandnes')
)
ALTER TABLE 时的SQL CHECK 约束

当表已被创建时,如需在’p_id’列创建CHECK 约束,请使用下面的SQL:

ALTER TABLE 表名
ADD CHECK (P_ID>0)

如需命名CHECK 约束,并定义多个列的CHECK 约束,请使用下面的SQL语法:

ALTER TABLE 表名
ADD CONSTRAINT 约束名 CHECK (p_id AND city='sandnes')
ALTER TABLE persons31
ADD CHECK (P_ID>0)

ALTER TABLE persons31
ADD CONSTRAINT check_persons31 CHECK(p_id>1 AND city='CN')

ALTER TABLE persons31
ADD CONSTRAINT check_persons1 CHECK (P_ID>1 and city = 'ab')
撤销CHECK 约束

如需撤销CHECK 约束,请使用下面的SQL:

ALTER TABLE persons31
drop constraint check_persons1
 类似资料: