图片 12

SQLServer之修改CHECK约束

应用SSMS数据库管理工科具修改CHECK约束

一、张开数据库,选用数据表-》右键点击-》采纳设计(或然拓展约束,选取约束,右键点击,选用修改,后边步骤一样)。

图片 1

图片 2

2、选取要修改的数额列-》右键点击-》选择CHECK约束。

图片 3

叁、在CHECK约束弹出框中-》选择要修改的牢笼-》输入约束表明式-》输入约束名和平条目束描述-》采取表设计器规则-》点击关闭。

图片 4

 4、点击保存开关(或许ctrl+s)-》刷新表查看修改结果。

图片 5

CHECK约束优缺点

优点:

一、保险列数据规范和界定,能够约束数据完整性

二、有Check约束的列能够提要求查询优化器新闻之所以晋级品质

缺点:

壹、插入只怕涂改时数据不适合约束规则,不只怕修改成功。

运用T-SQL脚本修改CHECK约束

CHECK约束修改规则必须首先删除现存的CHECK封锁,然后利用新定义再次创制,手艺接纳Transact-SQL修改CHECK约束。

语法:

–修改check约束
use 数据库名
go

–假如封锁存在则先删除
if exists(select * from sysobjects where
name=约束名)
alter table 表名 drop constraint
约束名;
go

–增添封锁
alter table 表名
–with check
–该约束是不是采纳于现成数据,with check代表应用于现存数量,with
nocheck表示不利用于现成数据
add constraint 约束名
check
not for replication
–当复制代理在表中插入或更新数据时,禁止使用该约束。
(约束表明式);
go

–向表中增多新数据或更新表中幸存数量时是否禁用该约束。check表示校验,nocheck代表不校验
–alter table 表名
–check
–constraint 表名;
–go

–增加check约束描述
execute sp_addextendedproperty
N’MS_Description’, N’约束描述’, N’SCHEMA’, N’dbo’, N’TABLE’, N’表名’,
N’CONSTRAINT’, N’约束名’;
go

示例:

–修改check约束
use testss
go

–借使封锁存在则先删除
if exists(select * from sysobjects where
name=’u_check2′)
alter table test1 drop constraint
u_check2;
go

–增加封锁
alter table test1
–with check
–该约束是还是不是采纳于现存数据,with check代表应用于现存数量,with
nocheck表示不利用于现存数据
add constraint u_check2
check
not for replication
–当复制代理在表中插入或更新数据时,禁用该约束。
(height>=100 and height
<=200);
go

–向表中加多新数据或更新表中现成数量时是或不是禁止使用该约束。check代表校验,nocheck代表不校验
–alter table test1
–check
–constraint u_check2;
–go

–加多check约束描述
execute sp_addextendedproperty
N’MS_Description’, N’修改约束’, N’SCHEMA’, N’dbo’, N’TABLE’, N’test一’,
N’CONSTRAINT’, N’u_check2′;
go

图片 6

图片 7

运用T-SQL脚本增多CHECK约束

CHECK约束修改优缺点

优点:

一、修改数据库CHECK约束能够保险数据的标准性和完整性。

缺点:

一:修改约束的表设计器使用规则时,大概会唤起原有数据与约束的争执。

 

选拔SSMS数据库处理工科具增添CHECK约束

一、连接数据库,选用数据库,选用数据表-》右键点击(只怕间接点击约束,右键点击,选用丰盛约束,后边步骤一样)-》采用设计。

图片 8

贰、选择要加上约束的数据列-》右键点击-》选取CHECK约束。

图片 9

3、在CHECK约束弹出框中式点心击加多。

图片 10

肆、在CHECK约束弹出框中-》输入CHECK约束表明式-》输入CHECK约束名-》输入CHECK约束描述-》别的能够选择暗中同意。

图片 11

伍、点击关闭-》点击保存开关(或许ctrl+s)-》刷新表查看结果。

图片 12

发表评论

电子邮件地址不会被公开。 必填项已用*标注