网站大量收购独家精品文档,联系QQ:2885784924

第5次课-关系数据库(2)+amp;+SQL+Server+2005介绍费下载(精品·公开课件).ppt

第5次课-关系数据库(2)+amp;+SQL+Server+2005介绍费下载(精品·公开课件).ppt

  1. 1、本文档共43页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据库技术与应用 北京邮电大学计算机学院 肖达 xiaoda99@ 第二章 关系数据库 2.1 关系数据结构及形式化定义 2.2 关系操作 2.3 关系代数 2.4 关系的完整性 2.3 关系的完整性 2.4.1 关系的三类完整性约束 2.4.2 实体完整性 2.4.3 参照完整性 2.4.4 用户定义的完整性 2.4.1 关系的三类完整性约束 实体完整性和参照完整性: 关系模型必须满足的完整性约束条件 称为关系的两个不变性,应该由关系系统自动支持 用户定义的完整性: 应用领域需要遵循的约束条件,体现了具体领域中的语义约束 2.4 关系的完整性 2.4.1关系的三类完整性约束 2.4.2 实体完整性 2.4.3 参照完整性 2.4.4 用户定义的完整性 2.4.2 实体完整性 规则2.1 实体完整性规则(Entity Integrity) 若属性A是基本关系R的主属性,则属性A不能取空值 例: SAP(SUPERVISOR,SPECIALITY,POSTGRADUATE) POSTGRADUATE: 主码(假设研究生不会重名) 不能取空值 实体完整性(续) 实体完整性规则的说明 (1) 实体完整性规则是针对基本关系而言的。一个基本表通常对应现实世界的一个实体集。 (2) 现实世界中的实体是可区分的,即它们具有某种唯一性标识。 (3) 关系模型中以主码作为唯一性标识。 (4) 主码中的属性即主属性不能取空值。 主属性取空值,就说明存在某个不可标识的实体,即存在不可区 分的实体,这与第(2)点相矛盾,因此这个规则称为实体完整性 2.4关系的完整性 2.4.1关系的三类完整性约束 2.4.2 实体完整性 2.4.3 参照完整性 2.4.4 用户定义的完整性 2.4.3 参照完整性 1. 关系间的引用 2. 外码 3. 参照完整性规则 1. 关系间的引用 在关系模型中实体及实体间的联系都是用关系来描述的,因此可能存在着关系与关系间的引用。 例1 学生实体、专业实体   学生(学号,姓名,性别,专业号,年龄)  专业(专业号,专业名) 关系间的引用(续) 例2 学生、课程、学生与课程之间的多对多联系 学生(学号,姓名,性别,专业号,年龄) 课程(课程号,课程名,学分) 选修(学号,课程号,成绩) 2.外码(Foreign Key) 设F是基本关系R的一个或一组属性,但不是关系R的码。如果F与基本关系S的主码Ks相对应,则称F是基本关系R的外码 基本关系R称为参照关系(Referencing Relation) 基本关系S称为被参照关系(Referenced Relation) 或目标关系(Target Relation) 外码(续) 例1:学生关系的“专业号”与专业关系的主码“专业号”相对应 “专业号”属性是学生关系的外码 专业关系是被参照关系,学生关系为参照关系 外码(续) 例3:“班长”与本身的主码“学号”相对应 “班长”是外码 学生关系既是参照关系也是被参照关系 外码(续) 关系R和S不一定是不同的关系 目标关系S的主码Ks 和参照关系的外码F必须定义在同一个(或一组)域上 外码并不一定要与相应的主码同名 当外码与相应的主码属于不同关系时,往往取相同的名字,以便于识别 3. 参照完整性规则 规则2.2 参照完整性规则 若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码Ks相对应(基本关系R和S不一定是不同的关系),则对于R中每个元组在F上的值必须为: 或者取空值(F的每个属性值均为空值) 或者等于S中某个元组的主码值 参照完整性规则(续) 例1:学生关系中每个元组的“专业号”属性只取两类值: 空值,表示尚未给该学生分配专业 非空值,这时该值必须是专业关系中某个元组的“专业号”值,表示该学生不可能分配一个不存在的专业 参照完整性规则(续) 例3:学生(学号,姓名,性别,专业号,年龄,班长) “班长”属性值可以取两类值: (1)空值,表示该学生所在班级尚未选出班长 (2)非空值,该值必须是本关系中某个元组的学号值 关系的完整性(续) 2.4.1关系的三类完整性约束 2.4.2 实体完整性 2.4.3 参照完整性 2.4.4 用户定义的完整性 2.4.4 用户定义的完整性 针对某一具体关系数据库的约束条件,反映某一具体应用所涉及的数据必须满足的语义要求 关系模型应提供定义和检验这类完整性的机制,以便用统一的系统的方法处理它们,而不要由应用程序承担这一功能 用户定义的完整性(续) 例: 课程(课程号,课程名,学分) “课程号”属性必须取唯一值 非主属性“课程名”也不能取空值

文档评论(0)

秦圈圈 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档