SQL SERVER数据完整性及约束

【摘要】所谓数据完整性,实际上是衡量数据库中数据质量好坏的一种标志,是确保数据库中数据一致,正确以及符合企业规则的一种思想,本文以详细的文字来介绍了什么是数据完整性及约束,以及如何在数据库建设中应用和使用这些约束。

【关键词】SQL Server;约束;数据完整性;一致性

在数据库管理系统中,保证数据库中的数据完整性是非常重要的。所谓数据完整性,就是指存储在数据库的表中数据的一致性和正确性。约束定义关于列中允许值的规则,是强制完整性的标准机制,对输入数据的取值范围和格式的限制称为约束。约束是用来保证数据完整性的。在SQL Server中有6种常设约束:空置约束(NULL)、唯一性约束(unique constraint)、主键约束(primary key constraint)、外键约束(foreign key constraint)、检查约束(check constraint)、缺省约束(default constraint)。

一、SQL Server的数据完整性

存储在数据库中的所有数据值均属正确的状态。如果数据库中存储有不正确的数据值,则该数据库称为已丧失数据完整性。

强制数据完整性可确保数据库中的数据质量。例如,如果有一“教学管理数据库”,学生表中学号一项输入了值为20110101的学生,那么该数据库不应允许其他学生使用同一学号值。如果计划将选修表中成绩的值范围设定为0到100,则数据库不应接受121。如果学生表有一列为班级编码,该列存储的班级编码为数据库中允许的有效班级编码。

二、数据完整性分类

在SQL Server中,根据数据完整性所作用的数据库对象和范围不同,可以将数据完整性分为实体完整性、域完整性、引用完整性、用户定义完整性四种。

1、实体完整性

实体完整性,简单来说,就是将表中的每一行看作一个实体。实体完整性要求表的标示符列或主键的完整性(主键不能为空)。可以通过建立唯一索引、PRIMARY KEY约束、UNIQUE约束来实施实体完整性。

2、域完整性

域完整性是指给定列的输入有效性。要求表中指定列的数据具有正确的数据类型、格式和有效的数据范围。强制域有效性的方法有:限制类型(通过数据类型)、格式(通过CHECK约束和规则)或可能值的范围。域完整性通过FOREIGN KEY约束、CHECK约束、DEFAULT定义、NOT NULL定义和规则来实现。

3、引用完整性

引用完整性又称参照完整性。引用完整性维持被参照表和参照表之间的数据一致性,主要通过主键(PRIMARY KEY)约束和外键(FOREIGN KEY)约束来实现。

引用完整性确保数据在所有表中一致。这样的一致性要求不能引用不存在的值,如果键值更改了,那么在整个数据库中,对该键值的所有引用要进行一致的修改。在被参照表中,当其主键值被其他表所参照时,该行不能被删除也不允许改变。在参照表中,不允许参照不存在的主键值。

4、用户定义完整性

用户定义完整性使用户能定义不属于其它任何完整性分类的特定设置。所有的完整性类型都支持用户定义完整性。

三、SQL Server的约束

约束作为数据库定义的一部分在CREATE TABLE语句中声明,所以又称做声明完整性约束。也可以在可视化操作界面,如sqlserver2005的ssms中操作设置。约束***于表结构,可以在不改变表结构情况下,通过ALTER TABLE语句来添加或者删除。在删除一个表时,该表所带的所有约束定义也被随之删除。

1、空置约束

格式:null/not null。

空置约束,是否允许该字段的值为NULL。当某一字段的值一定要输入才有意义的时候,则可以设置为NOT NULL。例如主键列就不允许出现空值,否则就失去了唯一标识一条记录的作用。

2、唯一约束(UNIQUE约束)

格式:[CONSTRAINT ] UNIQUE。

UNIQUE约束用于指明基本表在某一列或多个列的组合上的取值必须唯一。定义了UNIQUE约束的那些列称为唯一键,系统自动为唯一键建立唯一索引。从而保证了唯一键的唯一性。唯一键允许为空,但系统为保证其唯一性,最多只可以出现一个NULL值。

3、主键约束(PRIMARY KEY约束)

格式:[CONSTRAINT ] PRIMARY KEY。

PRIMARY KEY约束,PRIMARY KEY约束用于定义基本表的主键,起唯一标识作用,其值不能为NULL,也不能重复,以此来保证实体的完整性。

PRIMARY KEY与UNIQUE约束类似,通过建立唯一索引来保证基本表在主键列取值的唯一性,但它们之间存在着很大的区别:

①在一个基本表中只能定义一个PRIMARY KEY约束,但可定义多个UNIQUE约束;

②对于指定为PRIMARY KEY的一个列或多个列的组合,其中任何一个列都不能出现空值,而对于UNIQUE所约束的唯一键,则允许为空。

4、外键约束(FOREIGN KEY约束)

格式:REFERENCES 主表名(主键名)。

FOREIGN KEY约束要用到两个表一个从表,一个主表,包含外部键的表称为从表,包含外部键所引用的主键或唯一键的表称主表。系统保证从表在外部键上的取值要么是主表中某一个主键值或唯一键值,要么取空值。以此保证两个表之间的连接,确保了实体的参照完整性。

5、检查约束(CHECK约束)

格式:CHECK (条件表达式)。

CHECK约束用来检查字段值所允许的范围,如一个字段只能输入整数,而且限定在0-100的整数,以此来保证域的完整性。

6、默认值约束

格式:DEFAULT 默认值。

当为一列的约束设的是默认值约束。那么当用户在插入记录是没有明确地提供值时,系统便自动将默认值赋予给该列。

例:建立一个学生表,对性别字段进行默认约束。

CREATE TABLE 学生表

(学号 CHAR(7) ,

性别 CHAR(2) DEFAULT ‘男’,

……)

建立和使用约束的目的是保证数据的完整性,约束是SQL Server强制实行的应用规则,使用规则能够限制用户存放到表中数据的格式和值的范围,可确保数据库中的数据质量。

SQL SERVER数据完整性及约束

转载请注明出处学文网 » SQL SERVER数据完整性及约束

学习

改善“电脑脸”的七大妙招

阅读(25)

本文为您介绍改善“电脑脸”的七大妙招,内容包括电脑脸修复,怎么预防电脑脸。电脑等电子产品会发出对人体有害的辐射。长期接触这些辐射,可能会导致身体疲劳、脸色暗黄、精神不振,因此也影响了工作的效率。但是,辐射也可以通过各种措施来达

学习

爱的艺术―――性反应四周期

阅读(32)

爱是要讲艺术的?熏早在20世纪60年代,美国性学权威玛斯特斯和约翰逊就提出了著名的性理论反应四周期。他们认为,一次完美的夫妻性生活,应包括兴奋期、持续期、期和消退期。其中兴奋期主要是进行“性前嬉”,它是为做准备的;持续期和期表示已经进入;

学习

供销、消费和信用合作社的性质、任务与作用

阅读(25)

本文为您介绍供销、消费和信用合作社的性质、任务与作用,内容包括供销社与农村信用社的关系,供销社信用合作模式。一目前我国在流通领域内有下列三种合作社:供销合作社,消费合作社和信用合作社。消费合作社以工厂、矿山、机关、学校的职工

学习

电视片头创意设计论文

阅读(25)

本文为您介绍电视片头创意设计论文,内容包括电视片头创意表述,电视栏目片头设计。一、从创作思路谈栏目片头设计与实现电视栏目片头是栏目思路、风格、内容等的浓缩体现,它在设计上所要达到的目标应该是主题鲜明、浅显易懂。由于要考虑到

学习

简述辽源龙首山高句丽考古文化特点

阅读(30)

[摘要]辽源龙首山是高句丽时期所修筑的一座古代山城,目前也可说它是吉、辽两省高句丽城内文物出土最多的一座较重要城址。虽然龙首山古城没进行过大规模科学考古发掘,但从地面调查和小范围清理情况看,城内遗物非常丰富。通过大量多种器形特

学习

当西方遇见东方——明清传教士(上)

阅读(25)

本文为您介绍当西方遇见东方——明清传教士(上),内容包括明清西方传教士,明清时期西方传教士画家。基督教在中国有1300多年的传教史。唐代“景教”传入华夏;元代“也里可温”(又名“十字教”)在中土盛极一时;明代中叶,随大航海时代来临,基督教

学习

新员工管理的三大秘诀

阅读(33)

本文为您介绍新员工管理的三大秘诀,内容包括新员工管理技巧和方法,管理员工的最佳秘诀。“企无人则止”。目前,企业高呼“留人”,留的往往是企业老员工,而忽视了对新进员工的关注。新员工是企业的新鲜血液,他们的加入,不但可以解决企业的人才

学习

雪后的早晨作文1300字

阅读(24)

本文为您介绍雪后的早晨作文1300字,内容包括雪后的清晨作文,初冬的早晨作文。雪后的早晨我正在甜美的梦想里遨游,忽然,雪妹妹却拉着我走出了梦乡。我起来睁了睁惺忪的眼睛,推开了家里的大门。哇,昨天晚上下雪了。雪后的景色可真美丽呀!不管是

学习

怀念陈明达先生

阅读(56)

陈明达先生是我国杰出的建筑历史学家,是继梁思成先生、刘敦桢先生二位学科奠基人之后,在中国建筑史研究上取得重大成果的学者之一。陈先生的去世,是中国建筑史研究队伍的一个损失,我们后学一直在深深地怀念他。陈先生是长辈学者,一生在脚踏实

学习

格聂山大搜救

阅读(28)

他们当中的一位被发现,而寻找另一位,要等到4个月后美国登山者查尔斯・弗洛最后的熟睡,是在中国西南部四川省第三高峰格聂山一处海拔5300多米的深雪中,一个东经99.8°、北纬29.8°的地方。这个地方,中美两国有关人员用了两周时间,才得以确定。他

学习

浅析城市物流需求

阅读(31)

本文为您介绍浅析城市物流需求,内容包括城市物流需求最新参考文献,城市物流需求分析论文。【摘要】城市物流是指为城市服务的物流,它服务于城市经济发展的需要,指物品在城市内部的实体流动,城市与外部区域的货物集散以及城市废弃物清理的过

学习

汇率决定中的货币替代

阅读(79)

本文为您介绍汇率决定中的货币替代,内容包括汇率决定理论中的货币,汇率在货币演变中作用。作者简介:尹亚红(1970-),女,江西财经大学金融学院(南昌,330013),博士生。研究方向:国际金融。[内容摘要]在考虑汇率的影响因素时,传统的汇率决定理论主要

学习

泰山无字碑是何人所立/“垂青”一词的由来

阅读(34)

本文为您介绍泰山无字碑是何人所立/“垂青”一词的由来,内容包括泰山无字碑的历史典故,泰山的无字碑是为谁立的。泰山无字碑是何人所立文/田歌在泰山极顶玉皇殿门外,有一方高6米、宽1.2米、厚0.9米的长方形石表,白中透黄,形制古朴,石上无字,

学习

塑型约束手套的制作与应用

阅读(24)

本文为您介绍塑型约束手套的制作与应用,内容包括制作多功能防护手套的过程,约束手套的使用操作。【摘要】目的自制塑型约束手套,应用于患者,防止抓脱管道,体现人性化服务。方法自行设计制作的塑型约束手套,用料包括棉质布料、塑料板、粘合衬

学习

浅谈国有企业激励与约束机制分析

阅读(32)

本文为您介绍浅谈国有企业激励与约束机制分析,内容包括浅析国有企业中长期激励,目前国有企业激励机制的现状。【摘要】当今时代是知识经济的时代,在众多既定条件相当的情况下,企业间的竞争更多地表现为人力资源的竞争。我国国有企业经过多

学习

融资约束指数构建与评价

阅读(40)

本文为您介绍融资约束指数构建与评价,内容包括融资约束的度量指标,衡量融资约束的指数。本文采用二元Logistic回归模型法,选取制造业上市公司2009―2013年的财务数据,构建了反映制造业上市公司外部融资约束程度的融资约束指数。该指数的判

学习

融资约束文献综述

阅读(32)

本文为您介绍融资约束文献综述,内容包括融资约束用哪几种方法,监管重申约束非标融资。摘要:融资一直是财务管理研究的重要话题之一。本文旨在对融资约束进行概念界定,并对融资约束衡量方式选择的文献进行了梳理与回顾,进一步总结了融资约束

学习

预算松弛软约束

阅读(33)

本文为您介绍预算松弛软约束,内容包括预算软约束通俗解释,软预算约束模型。摘要:由于组织中的预算编制由经理人执行,在信息不对称的情况下,经理人有理由为实现自身利益而编制不可靠的预算,造成预算松弛情况的出现。声誉对于对未来有长期规划

学习

论自由与约束

阅读(26)

本文为您介绍论自由与约束,内容包括自由与约束的素材,约束与自由的作文。关键词:社会契约人民现实意义

学习

屈曲约束支撑概论与原理

阅读(28)

本文为您介绍屈曲约束支撑概论与原理,内容包括优良屈曲约束支撑原理,屈曲约束支撑设计方法与加工要点。关键词:屈曲约束支撑;基本构成;工作原理