




已阅读5页,还剩36页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1,2.6数据完整性,2,什么是数据完整性?,数据库中数据完整性是指保证数据正确的特性。数据完整性包括:(掌握)实体完整性域完整性参照完整性,3,重点难点,表之间的关系:一对一,一对多,多对多的关系,尤其要掌握把多对多的关系分解成一对多的方法。永久关系:理解永久关系的含义和作用;在数据库表设计器中设置两个表的永久关系的方法。参照完整性:首先会在数据库表设计器中基于某两个表的永久关系设置参照完整性的方法,重点掌握三个参照完整性所作用的对象,激活时机及其含义。,4,表之间的联系,联系分为:永久关系(物理连接)内连接外连接(全连接、左连接和右连接)临时关系(逻辑连接)2.7节中讲述库表之间可设置永久关系和临时关系,自由表之间只能设置临时关系。,5,内连接,内连接(或简单表连接),只在结果中包含根据连接谓词所匹配的行。因此,没有包含那些不匹配的行命令:joinwith|;for;to;fields,6,7,在DEPTNO列上,连接Project和Department两张表,8,外连接,保留行表左外连接中左边的表(当前表)右外连接中右边的表(非当前表)全外连接中全部的表NULL替换表左外连接中右边的表右外连接中左边的表全外连接中全部的表,9,左连接,左外连接返回那些存在于左表而右表中却没有的行,加上内连接的行此时左表成为保留行表,而右表成为替换NULL表来自保留行表的未匹配行会被保留,而来自替换NULL表中的行会用NULL替换,10,在DEPTNO列上,Project左连接Department(Leftjoin),11,右连接,右外连接返回那些存在于右表而左表中没有的行,加上内连接的行此时右表成为保留行表,而左表成为替换NULL表来自保留行表的未匹配行会被保留,而那些来自替换NULL的表中的行会由NULL替换。,12,在DEPTNO列上,Project右连接Department(Rightjoin),13,全连接,全外连接返回那些存在于右表但不存在于左表的行,加上那些存在于左表但不存在于右表的行,还有内连接的行。这两张表既替换NULL,也保留行,14,在DEPTNO列上,Project全连接Department(Fulljoin),15,16,17,2.6.1实体完整性与主关键字,保证表中纪录的唯一性也就是说表中不允许有重复的纪录在VFP中利用主关键字和候选关键字来保证纪录的唯一,18,2.6.2域完整性与约束规则,数据类型就属于域完整性的范畴域约束规则包括字段有效性规则和记录有效性规则,19,设置字段属性和有效性规则,对字段的输入输出格式、默认数值、显示标题、字段注释以及表文件长名、数据表的注释进行设置设置单字段的数据输入规则,控制和检查输入到该字段中的数据是否满足指定的要求;称为“字段级”有效性规则设置“记录级”规则,控制和检验所输入的整条记录是否符合要求;一般包含和涉及两个或两个以上字段;又称为多字段有效性规则,20,设置字段属性和约束规则,21,设置表的字段属性,1.输入掩码是指定义字段中的值必须遵守的标点,空格和其他格式的要求,以限定或控制用户输入的数据格式,屏蔽非法输入,从而减少人为的数据输入错误,保证输入的字段数据具有统一的风格,提高输入的效率。例如在课程号字段的“输入掩码”文本框中输入“JC999”表示课程号的格式由字母JC和1到3位数字组成,22,设置表的字段属性,2.格式实质上是一种输出掩码,它决定了字段在浏览窗口、表单、报表等界面中的显示样式。3.标题在数据库表中允许字段名最多使用128个字符,即长字段名,但是在使用的时候可能会很不方便可以为字段名设置标题,以便在浏览窗口,表单或报表中显示,23,常用的掩码及含义,24,设置表的字段属性,4.字段注释在数据表中可以为每个字段加上一些详细的注释,或是一些说明性的文字,使得数据表更容易理解,也便于日后其他人对数据表进行维护在项目管理器中打开表,选中某一字段后就可以在窗口底部的“说明”栏中显示注释信息。,25,违反“约束”性规则后的信息提示,设置“约束”性规则的目的是保证数据输入的有效性和正确性;减少数据输入错误违反“约束”规则时,系统将弹出信息提示框,显示相应的提示信息(错误提示信息可以设定)同时,拒绝接受该项数据输入“约束”条件的表现形式是逻辑表达式,26,教材P76例2.29和例2.30,例2.29规则文本框输入性别=“男”OR性别=“女”信息文本框输入“性别必须是“男”或“女”,不接受其他值”默认值文本框输入“男”,27,记录级规则P76-77,28,2.6.3参照完整性和表之间的关联,是指建立一组规则,当用户插入、删除或修改一个表中的数据时,通过参照引用相互关联的另一个表中的数据,来检查对表的数据操作是否正确。在VFP中,参照完整性可以保证:当父表中没有关联记录时,记录不得添加到子表中当改变父表的值而导致子表中出现孤立记录时,父表的值不能被改变当父表记录在子表中有匹配记录时,该父表记录不能被删除,29,建立表之间的永久联系,在VFP中,建立参照完整性必须先建立表之间的联系永久关系是在数据库中建立并保存在数据库中的数据表之间的永久关系;不经删除,将永远存在永久关系只能通过“数据库设计器”进行设置、编辑和删除建立永久关系的数据表之间有父表和子表的区别关联其它表的称为“父表”;被关联的表称为“子表”建立永久关系前提条件:数据表必须有意义相同的“公共字段”事先均以该“公共字段”作为索引关键字分别建立索引,30,创建永久关系,父表必须建立主索引或侯选索引子表也是“主(或候选)索引”时,为一对一关系子表为普通索引时,为一对多关系对于多对多的关系,一般需要拆分为两个“一对多”关系创建一张“纽带表”通过“纽带表”创建两个“一对多”的关系永久关系实际上是建立在“索引”上的,31,永久关系的作用,在涉及多张数据表操作时,系统将自动按所建立的永久关系,将相关的数据记录逻辑地“连接”成为一张“临时表”,32,VFP中的永久关系问题,VFP只能处理和建立一对一关系一对多关系对于“多对多”关系要通过“拆分”,以形成两个“一对多”关系,33,如何建立表之间的永久联系,永久联系是物理关联建立永久关系的表应属于一个数据库打开数据库设计器,在父表中建立主索引,在子表中建立普通索引,然后通过父表的主索引和子表的普通索引建立起两个表之间的联系具体操作演示!,34,如何编辑和删除关系,编辑关系:右键单击要修改的关系线,该关系线变粗,在弹出的快捷菜单中选择“编辑关系”命令,会弹出“编辑关系”对话框删除关系:选中两表之间的关系线,按下DELETE键。,35,设置参照完整性规则,设置参照完整性就是设置一组规则,当发生记录更新、插入或删除操作时,以父表为参照,控制子表数据如何操作通过实施参照完整性规则,可以保证:父表中没有的关联记录时,记录不能写入子表当子表中有匹配数据时,父表记录不能删除当改变父表的数据项,将使子表出现孤立记录时,父表中的修改不能进行,36,参照完整性规则的组成,更新规则、删除规则和插入规则分别规定:当更新父表中主关键字数值,如何处理子表中的相关记录的数据项当删除父表的记录时,如何处理子表中的相关记录当在子表中插入或更新记录时,是否进行参照完整性检查规则有三个选项:级联、限制、忽略,37,级联、限制、忽略的意义,38,设置的方法,关闭数据库中所有已经打开的表激活“数据库设计器”在菜单中选择“数据库/清理数据库”在菜单中选择“数据库/编辑参照完整性”弹出“参照完整性生成器”,39,参照完整性生成器,40,数据表完整性保证问题,保证数
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论