- 1、本文档共98页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第章 实现数据完整性
第7章 实现数据完整性 7.1 数据完整性概述7.1.1 数据完整性的定义 数据完整性是指存放在数据库中的数据要满足的业务规则,是确保数据库的数据一致、正确以及符合企业规则的一种思想。如年龄0~150,性别{男,女},成绩表中学号必须在学生基本信息表中存在等。这样可以保证有效的有意义的数据存放到数据库中。7.1.2 完整性类型 数据完整性有四种类型:实体完整性、域完整性、引用完整性、用户自定义完整性。 1.实体完整性 实体完整性也可称为表的完整性,是指表中必须有一个主关键字,用来惟一地标识表中的每一行,且不允许为空值(NULL)。实体完整性强制表的标识符列或主键的完整性(通过索引、UNIQUE约束、PRIMARY KEY约束或IDENTITY属性实现)。2. 域完整性 域完整性也可称为列的完整性,是指给定列的输入有效性,用于限制向表中输入的值的范围。强制域有效性的方法有:限制类型(通过类型)、格式(通过CHECK约束和规则)或可能值的范围(通过FOREIGN KEY约束、CHECK约束、DEFAULT定义、NOT NULL定义和规则)。 引用完整性确保键值在所有表中一致。这样的一致性要求不能引用不存在的值,如果键值更改了,那么在整个数据库中,对该键值的所有引用要进行一致的更改 。 7.2 使用约束实现数据完整性 7.2.1 PRIMARY KEY约束 表中经常有一个列或列的组合,其值能唯一地标识表中的每一行。这样的一列或多列称为表的主键(PK),通过它可强制表的实体完整性。当创建或更改表时可通过定义PRIMARY KEY约束来创建主键。注意,每个表有且只有一个PRIMARY KEY约束,PRIMARY KEY约束中的列不能接受空值,系统在定义PK的列上自动建立唯一索引,主键可以是多列的组合。 【例7-1】为数据库XSCJ中“学生基本信息表”的“学号”列上创建PRIMARY KEY约束。方法一、使用企业管理器创建主键约束。可以按以下步骤操作:①展开服务器,单击【数据库】,在展开数据库XSCJ后,单击【表】,显示XSCJ数据库所属的表信息。②右击【学生基本信息表】,在弹出的快捷菜单中单击【设计表】,打开如图7-1所示对话框。 ③单击【列名】下的【学号】列。④单击工具栏中的【设置主键】按钮,单击【保存】按钮即可。方法二、用ALTER TABLE命令来创建一个主键约束。其语法为: ALTER TABLE table_name ADD [CONSTAINT Constraint_name] PRIMARY KEY {(Column[,…n]) l column[,...n]:新约束所用的一列或多列(置于括号中)的列名。 l 在查询分析器中执行以下语句可以完成【例7-1】的任务。 运行结果如图7-2所示,成功地在“学生基本信息表”上创建了PRIMARY KEY约束 7.2.2 UNIQUE 约束 使用UNIQUE约束可以确保表中在非主键列中不输入重复值。尽管UNIQUE约束和PRIMARY KEY约束都强制惟一性,但在强制下面的唯一性时应使用UNIQUE约束而不是PRIMARY KEY约束: l 非主键的一列或组合。 l 一个表可以定义多个UNIQUE约束,而只能定义一个PRIMARY KEY约束。 l 允许空值的列。 l 允许空值的列上可以定义UNIQUE约束,但不能定义PRIMARY KEY约束。FOREIGN KEY约束也可以引用UNIQUE约束。 ①展开服务器,单击【数据库】,在展开数据库XSCJ后,单击【表】。②右击【系部表】,在弹出的快捷菜单中单击【设计表】,打开如图7-3所示的设计表对话框。③单击【管理约束】按钮,弹出如图7-4所示的【管理约束属性】对话框,选择【索引/键】标签。如图7-4所示。 ④单击【新建】按钮,在列名下选择【系部名称】,再在【创建UNIQUE(U)】复选框上打√,单击【约束】。如图7-5所示。⑤单击【关闭】按钮,在设计窗口单击【保存】按钮后,关闭设计表对话框即可。 图7-5管理约束界面方法二、在SQL Server 2000中,也可用ALTER TABLE命令来创建一个UNIQUE约束。其语法为:ALTER TABLE table_nameADD [CONSTAINT Constraint_name] UNIQUE {(Column[,…n])其中: 在查询分析器中通过执行以下语句可以实现【例7-2】的任务。USE XSCJGOALTER TABLE 系部表
您可能关注的文档
- 第六章电气主接线.ppt
- 第六节 管路计算.ppt
- 第六章烹饪与化学.ppt
- 第六讲 大学生学习心理与创新.ppt
- 第六节液化与汽化之蒸发.ppt
- 第六节带电粒子在磁场中的运动质谱仪回旋加速器带电粒子在磁场中的偏转.ppt
- 第六章装备设计六.ppt
- 第六讲 社会保障支出水平比较.ppt
- 第六章常用钢材及选用.ppt
- 第六讲 总需求函数和总供给函数.ppt
- 运动风格趋势:轻量化户外 2025 S S.pdf
- 数字乡村建设村村通广播应用方案.pdf
- 高盛-日本市场策略 Japan Strategy Flash 1Q325 earnings summary Double-digit (%) profit growth as results largely surprised upwards 0820 2024.pdf
- CEEM《全球智库半月谈》(总第286期).pdf
- 智慧物流概论微课课件第4章智慧物流信息平台.pdf
- 数字乡村公共安全综合平台项目解决方案.pdf
- 智慧物流概论微课课件第7章智慧物流包装.pdf
- 【案例】”啤酒之王“的智慧物流探索之路.pdf
- 数字连江城市数字基座(一期)和数字乡村示范点建设项目.pdf
- 智慧物流概论微课课件第1章智慧物流概述.pdf
最近下载
- 湖南省长沙市长郡中学2023-2024学年高二上学期入学考试物理试题 含解析.docx VIP
- 雅马哈-RCX340操作手册.pdf
- 小学语文 蜀风诗韵真题题库.doc
- 社会实践探寻家乡的民俗文化课件.pptx
- 2024年小学数学新教材培训学习心得.docx VIP
- 糖尿病足预防和护理.ppt VIP
- 电动单梁桥式起重机安拆专项施工方案 - 钢筋加工厂.docx
- NOIP2012 初赛提高组C++试题及答案.pdf VIP
- 2023年09月北京市公安局平谷分局面向社会公开招考50名勤务辅警笔试历年难易错点考题荟萃附带答案详解.docx VIP
- 外研版英语(三起点)六年级上册 Module9 大单元学历案教案 教学设计附作业设计(基于新课标教学评一体化).docx
文档评论(0)