Heim  >  Artikel  >  Datenbank  >  SqlServer基础:约束

SqlServer基础:约束

WBOY
WBOYOriginal
2016-06-07 15:24:331637Durchsuche

为了减少输入错误和保证数据库数据的完整性,可以对字段设置约束,例如考试成绩,其范围应该为0-100。约束是为了保证数据的完整性而实现的一套机制, 约束包括: 主键约束、外键约束、Unique约束、Check约束、默认值和允许空六种机制。 主键约束 : 这个不用

为了减少输入错误和保证数据库数据的完整性,可以对字段设置约束,例如考试成绩,其范围应该为0-100。约束是为了保证数据的完整性而实现的一套机制,约束包括:主键约束、外键约束、Unique约束、Check约束、默认值和允许空六种机制。

 

主键约束这个不用多说了,设置主键就是保证列中的值的唯一不重复。

外键约束外键的目的就是为了限制取值。

例如:分类表category(Nid-主键,categoryName),产品表Product(Nid,ProductName,CategoryId-外键),设置后Product表中的CategoryId的取值只能是category表中的Nid的值。
     SqlServer基础:约束    SqlServer基础:约束

如上图,如果在Product表中插入一条:insert into Product values('绿茶',9),则报错:

INSERT 语句与 FOREIGN KEY 约束"FK_Product_Product"冲突。该冲突发生于数据库"Interview",表"dbo.Category", column 'Nid'。
语句已终止。

Unique约束是指定该字段列里的数据不允许出现重复。例如在部门表里,部门名称是不能重复的,那么将部门表里的“部门名称”设置为Unique约束。
  设置方法如下:在表设计器窗格里右击空白处,在弹出的快捷菜单中选择【索引与键】选项,点击【添加】就会在左边的框中添加一个名为IX_表名的选项,然后在右边的框中的【类型】选为唯一键,【列】设置为要约束的列,关闭,保存即可。
  Unique约束与主键的区别:Unique约束可以输入Null值,主键不能;在一个表中可以定义多个Unique约束的字段,而主键字段只能有一个。

Check约束Check约束可以用来限制字段里的值在某个允许的范围内。例如员工通讯录表中的生日,其输入范围应该是1940到1990之间。
  设置Check约束的方法如下:展开表选项,在约束上右键新建约束,然后在表达式中添加逻辑关系,如:(Member>10) and (Member

默认值约束默认值就不用解释了,就是当没有明确的去插入数据时,默认填充的值。
  设置方法如下:打开表设计,选中列,在下面的列属性中有【默认值或绑定】,填写值即可;

允许空约束:就是在设计表时,每一个项最后的是否允许为空了啦

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn