金沙国际唯一官网网址SQLServer之DEFAULT约束

2、选择要修改的数据列-》右键点击-》选择CHECK约束,3、在CHECK约束弹出框中-》选择要修改的约束-》输入约束表达式-》输入约束名和约束描述-》选择表设计器规则-》点击关闭,用来限制输入一列或多列的值的范围,选择数据表-》右键点击(或者直接点击约束,请输入数值并且不要用引号将值括起来,请输入对象/函数的名称并且不要用引号将名称括起来,FOREIGN KEY 约束只能列出一个引用列,则此值必须在被引用列中存在

金沙国际唯一官网网址 16

CHECK约束修改优缺点

优点:

壹 、修改数据库CHECK约束可以保证数据的规范性和完整性。

缺点:

1:修改约束的表设计器使用规则时,或然会唤起原有数据与约束的冲突。

 

当表结构不设有时

若果表结构不设有,能够直接助长约束,能够而且添加2个也许八个约束。

语法:

–倘若表结构不存在时添加check约束
use 数据库名;
go
–借使已存在表则删除
if exists(select * from sysobjects where
name=表名 and xtype=’U’)
drop table 表名;
go
–创建表
create table 表名
(
–字段证明
列名 int identity(1,1) not null,
列名 nvarchar(50) null,
列名 nvarchar(50) null constraint 约束名
check(约束规则),
列名 nvarchar(50) null,
列名 int,
列名 int constraint 约束名
check(约束规则)
primary key clustered(列名 asc)
with(ignore_dup_key=off) on [primary], –主键索引注明
)on [primary]

–字段注释证明
exec sys.sp_addextendedproperty
@name=N’MS_Description’, @value=N’列描述’ ,
@level0type=N’SCHEMA’,
@level0name=N’dbo’,
@level1type=N’TABLE’,@level1name=N’表名’,
@level2type=N’COLUMN’,@level2name=N’列名’;

exec sys.sp_addextendedproperty
@name=N’MS_Description’, @value=N’列描述’ ,
@level0type=N’SCHEMA’,
@level0name=N’dbo’,
@level1type=N’TABLE’,@level1name=N’表名’,
@level2type=N’COLUMN’,@level2name=N’列名’;

exec sys.sp_addextendedproperty
@name=N’MS_Description’, @value=N’列描述’ ,
@level0type=N’SCHEMA’,
@level0name=N’dbo’,
@level1type=N’TABLE’,@level1name=N’表名’,
@level2type=N’COLUMN’,@level2name=N’列名’;

exec sys.sp_addextendedproperty
@name=N’MS_Description’, @value=N’列描述’ ,
@level0type=N’SCHEMA’,
@level0name=N’dbo’,
@level1type=N’TABLE’,@level1name=N’表名’,
@level2type=N’COLUMN’,@level2name=N’列名’;

exec sys.sp_addextendedproperty
@name=N’MS_Description’, @value=N’列描述’ ,
@level0type=N’SCHEMA’,
@level0name=N’dbo’,
@level1type=N’TABLE’,@level1name=N’表名’,
@level2type=N’COLUMN’,@level2name=N’列名’;

go

示例:

–借使表结构不设有时添加check约束
use testss;
go
–假设已存在表则删除
if exists(select * from sysobjects where
name=’test1′ and xtype=’U’)
drop table test1;
go
–创建表
create table test1
(
–字段注脚
id int identity(1,1) not null,
name nvarchar(50) null,
sex nvarchar(50) null constraint check1
check(sex=’男’ or sex=’女’),
age nvarchar(50) null,
classid int,
height int constraint check2
check(height>=110 and height<=120)
primary key clustered(id asc)
with(ignore_dup_key=off) on [primary], –主键索引表明
)on [primary]

–字段注释表明
exec sys.sp_addextendedproperty
@name=N’MS_Description’, @value=N’id主键’ ,
@level0type=N’SCHEMA’,
@level0name=N’dbo’,
@level1type=N’TABLE’,@level1name=N’test1′,
@level2type=N’COLUMN’,@level2name=N’id’;

exec sys.sp_addextendedproperty
@name=N’MS_Description’, @value=N’姓名’ ,
@level0type=N’SCHEMA’,
@level0name=N’dbo’,
@level1type=N’TABLE’,@level1name=N’test1′,
@level2type=N’COLUMN’,@level2name=N’name’;

exec sys.sp_addextendedproperty
@name=N’MS_Description’, @value=N’性别’ ,
@level0type=N’SCHEMA’,
@level0name=N’dbo’,
@level1type=N’TABLE’,@level1name=N’test1′,
@level2type=N’COLUMN’,@level2name=N’sex’;

exec sys.sp_addextendedproperty
@name=N’MS_Description’, @value=N’年龄’ ,
@level0type=N’SCHEMA’,
@level0name=N’dbo’,
@level1type=N’TABLE’,@level1name=N’test1′,
@level2type=N’COLUMN’,@level2name=N’age’;

exec sys.sp_addextendedproperty
@name=N’MS_Description’, @value=N’班级id’ ,
@level0type=N’SCHEMA’,
@level0name=N’dbo’,
@level1type=N’TABLE’,@level1name=N’test1′,
@level2type=N’COLUMN’,@level2name=N’classid’;

go

 金沙国际唯一官网网址 1

金沙国际唯一官网网址 2

金沙国际唯一官网网址 3

DEFAULT约束优缺点

优点:

一 、使用暗中认可值能够削减代码量,新增多少时方可不用写新增暗许值列,执行新增操作时时私下认可填充。

二 、较有利开始展览总结和分析,以及方便程序逻辑操作。

缺点:

① 、使用不为NULL的暗中同意值,占用了越多的储存空间。

 

FOREIGN KEY约束优缺点

优点:

壹 、保障数据的一致性,完整性,更保证。

② 、关联合检查询时,能够用到FK 的总括音讯。

③ 、有主外键的数据库设计可以扩充EPRADO图的可读性。

缺点:

一 、删队或更新关联数据时要求做检讨,效能会极低。

二 、手工业调数据时,会设有主从表校验,会相比麻烦。

③ 、批量导入数据时,会设有外键校验,需求先关闭外键约束,导入完结再打开外键约束,操作相比较麻烦。

 

采纳SSMS数据库管理工具修改CHECK约束

壹 、打开数据库,选拔数据表-》右键点击-》选用设计(恐怕拓展约束,选用约束,右键点击,选拔修改,后面步骤一样)。

金沙国际唯一官网网址 4

金沙国际唯一官网网址 5

二 、选取要修改的多寡列-》右键点击-》采取CHECK约束。

金沙国际唯一官网网址 6

三 、在CHECK约束弹出框中-》选用要修改的约束-》输入约束表明式-》输入约束名和约束描述-》采纳表设计器规则-》点击关闭。

金沙国际唯一官网网址 7

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

金沙国际唯一官网网址 8

采纳SSMS数据库管理工科具添加CHECK约束

一 、连接数据库,选拔数据库,接纳数据表-》右键点击(恐怕直接点击约束,右键点击,选用丰硕约束,后边步骤一样)-》选拔设计。

金沙国际唯一官网网址 9

② 、采用要添加约束的多寡列-》右键点击-》选拔CHECK约束。

金沙国际唯一官网网址 10

叁 、在CHECK约束弹出框中点击添加。

金沙国际唯一官网网址 11

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

金沙国际唯一官网网址 12

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

金沙国际唯一官网网址 13

利用SSMS数据库管理工科具添加DEFAULT约束

① 、连接数据库,采用数据表-》右键点击-》选择设计。

金沙国际唯一官网网址 14

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

金沙国际唯一官网网址 15

叁 、点击保存按钮(只怕ctrl+s)-》刷新表-》再一次打开表查看结果。

金沙国际唯一官网网址 16

使用T-SQL脚本添加外键约束