您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 经营企划 > 第2章关系数据模型V21
DATABASE@UESTC学以致用用以促学电子科技大学计算机学院胡旺scuhuwang@126.com2019年12月20日星期五《数据库原理及应用》第2章关系数据模型DATABASE@UESTC学以致用用以促学ClicktoaddTitle1数据模型1ClicktoaddTitle2关系数据模型2ClicktoaddTitle2关系3ClicktoaddTitle1关系代数4DATABASE@UESTC学以致用用以促学了解数据模型的基本构成和发展过程;掌握关系数据模型的结构和关系数据的操作与约束;了解域、笛卡尔积的基本内容,掌握关系完整性的基本内容;掌握基本的集合运算知识。DATABASE@UESTC学以致用用以促学在数据库中用数据模型这个工具来抽象、表示和处理现实世界中的数据和信息。通俗地讲数据模型就是现实世界的模拟。数据模型应满足三方面要求能比较真实地模拟现实世界容易为人所理解便于在计算机上实现DATABASE@UESTC学以致用用以促学客观对象的抽象过程---两步抽象现实世界中的客观对象抽象为概念模型;把概念模型转换为某一DBMS支持的数据模型。概念模型是现实世界到机器世界的一个中间层次。现实世界认识抽象信息世界概念模型机器世界DBMS支持的数据模型数据模型抽象过程DATABASE@UESTC学以致用用以促学数据模型的不同层次概念模型逻辑模型物理模型DATABASE@UESTC学以致用用以促学概念数据模型(ConceptualDataModel,CDM)面向现实世界建模主要用来描述现实世界的概念化结构,与具体DBMS无关现实世界的事物经过人脑的抽象加工,提取出对用户有用的信息,经过组织整理加工形成介于现实世界和计算机世界之间的中间模型;CDM只关心现实世界中的事物、事务特征、联系;CDM是系统分析员、程序设计员、维护人员、用户之间的共同语言;CDM能使数据库的设计人员在设计的初始阶段摆脱计算机系统及DBMS的具体技术问题,集中精力分析数据、数据之间的联系;概念模型必须转换成逻辑模型,才能在DBMS中实现;最常用的概念模型表达工具是E-R模型DATABASE@UESTC学以致用用以促学逻辑数据模型(LogicalDataModel,LDM)面向用户建模用户从数据库所看到的数据模型;是具体的DBMS所支持的数据模型(网状/层次/关系/面向对象);既要面向用户,也要面向系统;LDM表示数据间联系的方法一般的DBMS支持一种LDM(特殊的DBMS支持多种LDM)DATABASE@UESTC学以致用用以促学物理数据模型(PhysicalDataModel,PDM)面向具体的DBMS,面向机器描述数据在存储介质上的组织结构PDM不仅与具体的DBMS有关,还与操作系统和硬件有关每一种逻辑模型在实现时都有其对应的物理模型PDM加入了概念模型中要考虑的因素:触发器、存储过程、主键、外键、索引等DBMS为保证其独立性和可以执行,大部分PDM的实现工作由系统自动完成,而设计者只设计索引、聚簇等特殊结构DATABASE@UESTC学以致用用以促学数据结构数据操作数据的约束条件DATABASE@UESTC学以致用用以促学数据结构与数据类型、内容、性质有关的对象,如关系模型中的域、属性、关系等与数据之间联系有关的对象。数据结构是对系统静态特征的描述。DATABASE@UESTC学以致用用以促学数据操作数据操作是指对数据库中各种对象的实例允许执行的操作的集合,包括操作及有关的操作规则。数据库主要有检索和更新(包括插入、删除、修改)两大类操作。数据模型必须定义这些操作的确切含义、操作符号、操作规则(如优先级)及实现操作的语言。数据操作是对系统动态特性的描述。DATABASE@UESTC学以致用用以促学数据约束条件数据的约束条件是一组完整性规则的集合。完整性规则是指给定的数据模型中的数据及其联系所具有的制约和依存规则,用以限定符合数据模型的数据库状态及状态的变化,以保证数据的正确、有效、相容。在关系模型中,任何关系必须满足实体完整性和参照完整性两个条件。提供定义完整性约束条件的机制,自定义完整性,以反映具体应用所涉及的数据必须遵守的特定的语义约束条件。例如,在医院的数据库中规定医生的年龄在18到60岁之间。DATABASE@UESTC学以致用用以促学层次模型网状模型关系模型面向对象模型DATABASE@UESTC学以致用用以促学层次模型用树形结构来表示各类实体及实体间的联系。有且只有一个结点没有双亲结点,这个结点称为根结点;根以外的其他结点有且只有一个双亲结点。R1根结点R2兄弟结点R3叶结点R4兄弟结点R5叶结点叶结点DATABASE@UESTC学以致用用以促学层次模型优点概念简单数据库的安全性数据独立性数据库完整性效率高层次模型缺点实现复杂难于管理缺乏结构独立性应用程序编写和使用复杂性实现的限制缺乏标准R1根结点R2兄弟结点R3叶结点R4兄弟结点R5叶结点叶结点DATABASE@UESTC学以致用用以促学在网状数据模型中,一个联系可以被称为一个系。每个系至少由两种记录类型组成:一种等同于层次模型中父节点的首记录,另一种等同于层次模型中子节点的属记录。DATABASE@UESTC学以致用用以促学网状模型优点概念简单数据访问的灵活性提高了数据库的完整性数据独立性符合标准网状模型缺点系统复杂性缺乏结构独立性DATABASE@UESTC学以致用用以促学关系模型是目前最重要的一种数据模型。关系数据库系统采用关系模型作为数据的组织方式。1970年美国IBM公司的研究员E.F.Codd首次提出了关系模型,开创了数据库关系方法和关系数据理论的研究,为数据库技术奠定了理论基础。20世纪80年代以来,计算机厂商新推出的关系数据库管理系统几乎都支持关系模型,非关系模型的产品也大都加上了关系接口。数据库领域当前的研究工作也都是以关系方法为基础。后面专门讲述DATABASE@UESTC学以致用用以促学面向对象数据模型至少由以下这些部分组成:数据模型的对象是真实世界实体或事件的抽象。属性描述一个对象的特性。共有一些相似特征的对象被归为一类。类是一组具有共同结构和行为的相近的集合。类在一个类层次结构中组织起来。类层次结构像一个自顶向下的树,每个类只能有一个父类。DATABASE@UESTC学以致用用以促学面向对象数据模型优点:增加了语义内容可视化表达包含了语义内容数据库完整性结构独立性和数据独立性面向对象数据模型缺点:面向对象数据模型标准缺乏复杂的导航式数据访问过高的系统开销减慢了事物处理的速度DATABASE@UESTC学以致用用以促学ClicktoaddTitle1数据模型1ClicktoaddTitle2关系数据模型2ClicktoaddTitle2关系3ClicktoaddTitle1关系代数4DATABASE@UESTC学以致用用以促学基本概念关系数据模型的数据结构关系数据模型的数据操作关系数据模型的数据约束关系数据模型的优缺点DATABASE@UESTC学以致用用以促学关系实例关系实例是由命名的若干列和行组成的表格。一般地,关系指代实例。关系中的行称为元组,类似于文件中的记录,但与文件记录的不同之处是,所有的元组的列数相同,并且一个关系中不存在两个相同的元组。关系实例中元组的数目称为基数(Cardinality)。在关系模型中,关系中的列一般都应该被命名。由于关系是元组的集合,所以元组的次序是无关紧要的。DATABASE@UESTC学以致用用以促学关系模式(RelationSchema),包括如下组成部分:关系名关系中的属性的名字及相关联的域名完整性约束关系必须是规范化的,满足一定的规范条件最基本的规范条件(第一范式,1NF):关系的每一个分量必须是一个不可分的数据项,即不能表中有表。DATABASE@UESTC学以致用用以促学关系数据库关系数据库是关系的有限集合。因为关系由两部分组成,所以关系数据库也是由两部分组成,即关系模式的集合及对应的关系实例的集合。关系模式的集合称为数据库模式,对应的关系实例的集合称为数据库实例。DATABASE@UESTC学以致用用以促学基本术语:关系关系(Relation)是笛卡尔积的一个有意义的子集一个关系就是一张二维表通常将一个没有重复行、重复列的二维表看成一个关系。每个关系都有一个关系名。二维表存放两类数据:实体本身的数据实体之间的联系关系关系名:患者元组属性分量DATABASE@UESTC学以致用用以促学基本术语:关系元组(Tuple)表中的一行,表示一个实体,关系是由元组组成的。属性(Attribute)表中的每一列在关系中称为属性,每个属性都有一个属性名,属性值则是各元组属性的取值。例如,属性:“Pno”,“Pname”,“Psex”,“Page”,“Pid”。域(Domain)属性的取值范围称为域。同一属性只能在相同域中取值。例如,性别属性“Psex”的域为“男”和“女”分量(Component)元组中的一个属性值。DATABASE@UESTC学以致用用以促学键(Key)关系中能唯一区分不同元组的属性或属性组合,称为关系的一个键,或者称为关键字、码。关键字的属性值不能取“空值”——实体完整性规则。例如,“Pno”为患者关系的键,因为患者编号不允许重复,它的每个值能唯一地把每个患者元组区分开来,而“Pname”则不能作为关键字,因为患者中可能出现重名。候选健(CandidateKey)关系中能够成为关键字的属性或属性组合可能不是唯一的。凡在关系中能够唯一区分确定不同元组的属性或属性组合,称为候选健。包括在候选键中的属性成为主属性,不包括在候选键中的属性称为非主属性。主键(PrimaryKey,PK)当一个关系中有多个候选健的时候,从中选定一个作为关系的主键。关系中主键是唯一的。每个关系中有且只有一个主键。DATABASE@UESTC学以致用用以促学外键(ForeignKey,FK)关系中某个属性或属性组合并非该关系的键,但却是另一个关系的主键,称此属性或属性组合组合为本关系的外键。诊断编号患者编号医生编号症状描述诊断描述就诊时间医生编号医生姓名医生性别医生年龄所属部门技术等级工资主键(PrimaryKey,PK)外键(ForeignKey,FK)DATABASE@UESTC学以致用用以促学关系模式(RelationSchema)对关系的描述称为关系模式,其格式为:关系名(属性名l,属性名2,…,属性名n)例如:患者(编号,姓名,性别,年龄)DATABASE@UESTC学以致用用以促学关系数据操作包括两类:查询更新(插入、删除和修改)操作语言用户可以通过关系语言来完成对数据的各种操作,关系语言特点是高度非过程化,即用户只需说明“做什么”而不必说明“怎么做”。DATABASE@UESTC学以致用用以促学关系数据约束:数据模型中固有的约束,如元组不能重复。可以在数据模型的模式中直接表述的约束,如数据定义语言(DDL)中指定的完整性约束。不能在数据模型的模式中直接表述的约束,由应用程序表示和执行。DATABASE@UESTC学以致用用以促学关系数据模型的优点:关系模型与非关系模型不同,它是建立在严格的数学概念的基础上的。数据结构简单、清晰。更高的数据独立性,更好的安全保密性。丰富的完整性。关系数据模型的缺点:对“现实世界”实体的表达能力弱。由于存取路径对用户透明,查询效率往往不如非关系数据模型。关系模型只有一些固定的操作集。不能很好的支持业务规则。DATABASE@UESTC学以致用用以促学典型商业DBMS:SQLServer——MicrosoftORAC
本文标题:第2章关系数据模型V21
链接地址:https://www.777doc.com/doc-2154871 .html