- 1、本文档共37页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[工学]第2章 数据库-关系模型1
关系模型概述 关系模型的完整性约束 关系数据库系统的三层模式结构 关系代数 关系演算 查询优化 关系模型组成 关系模型的基本术语 对关系的限定(关系的性质) 关系模型组成 关系数据结构 关系操作集合 关系完整性约束 关系数据结构 数据库中全部数据及其相互联系都被组织成“关系”(二维表)的形式。 关系模型基本的数据结构是关系。 关系操作集合 传统的集合运算 并(Union) 交(Intersection) 差(Difference) 广义笛卡尔积(Extended Cartesian Product) 专门的关系运算 选择(Select) 投影(Project) 连接(Join) 除(Divide) 有关的数据操作 查询(Query) 插入(Insert) 删除(Delete) 修改(Update) 关系操作的特点是操作对象和操作结果都是集合。而非关系数据模型的数据操作方式则为一次一条记录的方式。 关系的操作能力可以用代数方式和逻辑方式来表示: 代数方式:通过关系代数对关系的运算来表达查询要求。 逻辑方式:通过关系演算、用谓词表达对关系的查询要求。 现在关系数据库已经有了标准语言——SQL(Structured Query Language),它是一种介于关系代数和关系演算的语言。 关系数据语言 关系代数语言:如ISBL 关系演算语言: 元组关系演算语言(如Aplha,Quel) 域关系演算语言(如QBE) 具有关系代数和关系演算双重特点的语言:如SQL 关系完整性约束 在数据库中数据完整性是指保证数据正确的特性。它包括两方面的内容: 与现实世界中应用需求的数据的相容性和正确性; 数据库内数据之间的相容性和正确性。 在关系数据模型中一般将数据完整性分为三类 实体完整性 参照完整性 用户定义完整性 需要说明两点 关系是元组的集合,集合(关系)中的元素(元组)是无序的;而元组不是分量di的集合,元组中的分量是有序的。 例如,在关系中(a,b)≠(b,a),但在集合中{a,b}={b,a}。 若一个关系的元组个数是无限的,则该关系称为无限关系,否则称为有限关系;在数据库中只考虑有限关系。 主要术语说明 元组(tuple):表中的一行 属性(attribute):表中的一列,列名即为属性名 域(domain):属性的取值范围 分量(element):元组中的一个属性值 超键(super key):在关系中能唯一标识元组的属性集 候选键(candidate key):不含有多余属性的超键 主键(primary Key):用户选作元组标识的一个候选键称为主键 关系(relation):关系是一个元数为K(K0)的元组的集合。是规范化的二维表格。 关系模型(relational model):用二维表格表示实体集,外键表示实体间联系的数据模型 关系模式(relation mode) :关系的型称为关系模式,用关系名(属性名1,属性名2,……,属性名n)来表示 关系数据模型实例 关系性质1——每一分量必须是不可分的最小数据项,即每个属性都是不可再分解的 关系性质2——列的个数和每列的数据类型是固定的,即每一列中的分量是同类型的数据,来自同一个值域 关系性质3——不同的列可以出自同一个值域,每一列称为属性,每个属性要给予不同的属性名 关系性质4——列的顺序是无关紧要的,即列的次序可以任意交换,但一定是整体交换,属性名和属性值必须作为整列同时交换 关系性质5——元组不可以重复,即在一个关系中任意两个元组不能完全一样 关系性质6——行的顺序是无关紧要的,即行的次序可以任意交换 关系模型概述 关系模型的完整性约束 关系数据库系统的三层模式结构 关系代数 关系演算 查询优化 2.2 关系模型的完整性约束 实体完整性规则 参照完整性规则 用户定义完整性 完整性约束的作用 实体完整性规则 实体完整性是要保证关系中的每个元组都是可识别和唯一的。 实体完整性规则要求关系中元组的主键值不可以为空值。 实体完整性是关系模型必须满足的完整性约束条件,也称作是关系的不变性。 关系数据库管理系统用主键实现实体完整性,这是由关系系统自动支持的。 对实体完整性规则的几点说明 实体完整性规则是针对关系而言的,而关系则对应一个现实世界中的实体集。例如,仓库关系对应现实世界中的仓库实体集。 现实世界中的实体是可区分的,它们具有某种标识特征;相应地,关系中的元组也是可区分的,在关系中用主键做唯一性标识。 主键中的属性不能取空值。如果取空值,则意味着关系中的某个元组是不可标识的,即存在不可区分的实体,这与实体的定义也是矛盾的。 参照完整性规则 现实世界中的实体间存在着某种联系,而在关系模型中实体是用关系描述的、实体之间的联系也是用关系描述
文档评论(0)