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

1、张开数据库,选拔数据表-》右键点击-》采用设计(大概实行约束,选拔约束,右键点击,选拔修改,后边步骤同样)。

威尼斯城真人赌钱网站 1

威尼斯城真人赌钱网站 2

2、采纳要修改的数量列-》右键点击-》选用CHECK约束。

威尼斯城真人赌钱网站 3

3、在CHECK约束弹出框中-》接纳要修改的自律-》输入约束表明式-》输入约束名和平条约束描述-》选择表设计器准绳-》点击关闭。

威尼斯城真人赌钱网站 4

 4、点击保存按键(只怕ctrl+s)-》刷新表查看修改结果。

威尼斯城真人赌钱网站 5

CHECK约束增加法规

1、CHECK
约束用于限制列中的值的限量。

2、Check约束通过逻辑表达式来决断数据的管事,用来界定输入一列或多列的值的限定,在列中更新数据时,所要输入的原委必须满意Check约束的原则,不然将不可能正确输入。

3、假设对单个列定义 CHECK
约束,那么该列只允许特定的值。

4、如若对二个表定义 CHECK
约束,那么此约束会在特定的列中对值进行限制。

DEFAULT约束增多准则

1、若在表中定义了默许值约束,用户在插入新的数额行时,如若该行未有一点名数量,那么系统将暗许值赋给该列,倘使我们不设置暗中同意值,系统默以为NULL。

2、就算“私下认可值”字段中的项替换绑定的暗中同意值(以不带圆括号的花样显示),则将唤起您清除对私下认可值的绑定,并将其替换为新的暗中同意值。

3、若要输入文本字符串,请用单引号 (‘)
将值括起来;不要选拔双引号
(“),因为双引号已保存用于带引号的标记符。

4、若要输入数值暗中认可值,请输入数值並且永不用引号将值括起来。

5、若要输入对象/函数,请输入对象/函数的名号并且不要用引号将名称括起来。

FOREIGN KEY约束加多法规

1、外键约束并不仅可以够与另一表的主键约束相链接,它还能定义为引用另三个表中
UNIQUE 约束的列。

2、如若在 FOREIGN
KEY 约束的列中输入非 NULL
值,则此值必须在被引用列中存在;不然,将回来违反外键约束的错误音信。 若要确认保证验证了咬合外键约束的装有值,请对持有加入列钦赐NOT NULL。

3、FOREIGN KEY
约束仅能引用位于同一服务器上的一律数据库中的表。 跨数据库的援引完整性必须透过触发器完结。

4、FOREIGN KEY
约束可引用同一表中的其余列。 此行为称作自援引。

5、在列级内定的
FOREIGN KEY 约束只好列出多个援用列。 此列的数据类型必须与概念约束的列的数据类型一样。

6、在表级钦赐的
FOREIGN KEY 约束所持有的援用列数目必须与约束列列表中的列数同样。 每一种援引列的数据类型也不能够不与列表中相应列的数据类型一样。

7、对于表可满含的援用别的表的 FOREIGN KEY
约束的数目或任何表所具有的援用特定表的 FOREIGN KEY 约束的数码, 数据库引擎 都并未有预订义的界定。 尽管如此,可采用的 FOREIGN KEY
约束的实际数据依旧受硬件配置以及数据库和应用程序设计的限量。 表最多能够将 252个其余表和列作为外键引用(传出援用)。 SQL
Server 二〇一六 (13.x) 将可在单身的表中援用的别的表和列(传入援引)的数目限制从
253 升高至 10,000。 (包容性品级至少必须为
130。)数量限制的增高带来了下列约束:

DELETE 和 UPDATE
DML 操作帮忙胜出 253 个外键引用。 不帮助ME君越GE 操作。

对自个儿举行外键援引的表仍只好实行 253个外键援引。

列存储索引、内部存款和储蓄器优化表和 Stretch Database
暂不辅助开始展览超过 253 个外键援引。

8、对于有的时候表不强制 FOREIGN KEY 约束。

9、若是在 CL帕杰罗用户定义类型的列上定义外键,则该品种的落到实处必须帮助二进制排序。

10、仅当 FOREIGN
KEY
约束援用的主键也定义为品种 varchar(max) 时,本事在此约束中运用项目为varchar(max) 的列。

1:向表中加多字段
Alter table [表名] add [列名] [类型]

应用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’test1′,
N’CONSTRAINT’, N’u_check2′;
go

威尼斯城真人赌钱网站 6

威尼斯城真人赌钱网站 7

利用SSMS数据库处理工具加多CHECK约束

1、连接数据库,选用数据库,选择数据表-》右键点击(大概直接点击约束,右键点击,选择丰盛约束,前边步骤同样)-》选取设计。

威尼斯城真人赌钱网站 8

2、选用要抬高约束的数码列-》右键点击-》选用CHECK约束。

威尼斯城真人赌钱网站 9

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

威尼斯城真人赌钱网站 10

4、在CHECK约束弹出框中-》输入CHECK约束表明式-》输入CHECK约束名-》输入CHECK约束描述-》别的能够挑选暗许。

威尼斯城真人赌钱网站 11

5、点击关闭-》点击保存开关(可能ctrl+s)-》刷新表查看结果。

威尼斯城真人赌钱网站 12

利用SSMS数据库管理工科具增多DEFAULT约束

1、连接数据库,选取数据表-》右键点击-》采纳设计。

威尼斯城真人赌钱网站 13

2、在表设计窗口中-》选取数据列-》在列属性窗口中找到默许值或绑定-》输入暗中同意值(注意暗中认可值的数据类型和输入格式)。

威尼斯城真人赌钱网站 14

3、点击保存开关(恐怕ctrl+s)-》刷新表-》再度展开表查看结果。

威尼斯城真人赌钱网站 15

应用SSMS数据库管理工科具加多外键约束

本示例演示当表结构已存在时加多外键约束,创设表时丰硕外键约束步骤和表结构存在时增多外键步骤同样。示例演示如下:

1、连接数据库,展开要增添外键的数据表-》右键点击-》选拔设计。

威尼斯城真人赌钱网站 16

2、在表设计窗口-》选拔要增加外键的数额行-》右键点击-》选用事关。

威尼斯城真人赌钱网站 17

3、在外键关系窗口中-》点击增加。

威尼斯城真人赌钱网站 18

4、加多完结后-》首先修改表和列标准。

威尼斯城真人赌钱网站 19

5、在表和列窗口中-》输入外键名-》在左边采用主表和关系的列-》在侧面选用从表和当作外键的列-》点击分明。

威尼斯城真人赌钱网站 20

6、在外键关系窗口中-》可选择足够或然不增加外键描述-》可挑选足够只怕不增加修改恐怕去除数据时级联操作-》可挑选丰富大概不加多强制外键约束-》可采取丰裕或然不增多强制用于复制-》点击关闭。

威尼斯城真人赌钱网站 21

7、点击保存开关(ctrl+s)-》此时表会弹出警告窗口,点击是-》刷新查看外键是或不是丰盛成功。

威尼斯城真人赌钱网站 22

威尼斯城真人赌钱网站 23

2:删除字段
Alter table [表名] drop column [列名]

CHECK约束修改优短处

优点:

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

缺点:

1:修改约束的表设计器使用准则时,可能会挑起原有数据与约束的龃龉。

 

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

使用T-SQL脚本增添DEFAULT约束

利用T-SQL脚本增添外键约束

3:修改表中字段类型(能够修改列的门类,是还是不是为空)
Alter table [表名] alter column [列名] [类型]

当表结构存在时

增添CHECK约束时首先校验约束是不是已存在,即使存在应该是先删除再增加,倘诺不设有则一贯抬高。

语法:

— 增添贰个默许约束
use 数据库名;
go

if exists(select * from sysobjects where
name=约束名)
alter table 表名 drop constraint
约束名;
go

alter table 表名 add constraint 约束名
check(约束法规),constraint 约束名 check(约束准绳);
go

示例:

— 加多叁个私下认可约束
use testss;
go

if exists(select * from sysobjects where
name=’check1′)
alter table test1 drop constraint
check1;
go

alter table test1 add constraint check1
check(height>=170 and height<=175);
go

 威尼斯城真人赌钱网站 24

威尼斯城真人赌钱网站 25

当表结构已存在时

第一决断表中是或不是留存暗中认可约束,假诺存在则先删除默许约束再增加,假使海市蜃楼则一贯抬高。

语法:

use 数据库
go
–决断暗中认可约束是或不是存在,假使存在则先删除,借使不设有则一向抬高
if exists(select * from sysobjects where
name=约束名)
alter table 表名 drop constraint
约束名;
go
–给钦赐列增添暗中同意约束
alter table 表名 add constraint 约束名
default(约束值) for 列名;
go

示例:

use [testss]
go
–判别默许约束是不是存在,假如存在则先删除,假若不设有则平素抬高
if exists(select * from sysobjects where
name=’defalut_height’)
alter table [testss].[dbo].[test1]
drop constraint defalut_height;
go
–给钦点列增加私下认可约束
alter table [testss].[dbo].[test1]
add constraint defalut_height default(160) for height;
go

威尼斯城真人赌钱网站 26

威尼斯城真人赌钱网站 27

当表结构已存在时

要是要加多约束的表已存在外键约束,要求先删除此而外键约束再增加外键约束。假诺海市蜃楼外键约束能够增添外键约束。

语法:

if exists(select * from sysobjects where
name=约束名)
alter table 数据库名.[dbo].表名 drop
constraint 约束名;
alter table 数据库名.[dbo].表名 with
check add constraint 约束名 foreign key(列名)
references 数据库名.[dbo].表名(列名)

on delete cascade
on update cascade;
go

示例:

if exists(select * from sysobjects where
name=’t1_t2′)
alter table [testss].[dbo].[test1]
drop constraint t1_t2;
alter table [testss].[dbo].[test1]
with check add constraint t1_t2 foreign key(classid)
references
[testss].[dbo].[test2](id)
on delete cascade
on update cascade;
go

威尼斯城真人赌钱网站 28

4:加多主键
Alter table [表名] add constraint [约束名] primary key([列名])

相关文章