J第2章数据模型1

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

AnIntroductiontoDatabaseSystenm1第二章数据模型数据库系统概论AnIntroductiontoDatabaseSystemAnIntroductiontoDatabaseSystenm2第二章数据模型在数据库中用数据模型这个工具来抽象、表示和处理现实世界中的数据和信息。通俗地讲数据模型就是对现实世界的模拟.数据模型应满足三方面要求能比较真实地模拟现实世界容易为人所理解便于在计算机上实现AnIntroductiontoDatabaseSystenm32.1两大类数据模型客观对象的抽象过程---两步抽象现实世界中的客观对象抽象为概念模型;把概念模型转换为某一DBMS支持的逻辑模型。由DBMS实现逻辑模型转换为物理模型现实世界信息世界计算机世界概念模型逻辑模型——物理模型AnIntroductiontoDatabaseSystenm4根据数据模型应用的不同目的,将数据模型分为两类:概念模型、逻辑模型和物理模型。第一类的概念模型:即信息模型,是按用户的观点对客观世界的数据和信息建模,主要用于数据库设计。常用实体-联系(E-R)图表示。第十章介绍。第二类的逻辑模型:是按计算机系统的观点,对数据建模。主要用于DBMS的实现。第二类的物理模型:是对数据最底层的抽象。描述数据在存储设备上的存储方式和存取方法。该模型由DBMS实现。AnIntroductiontoDatabaseSystenm52.2数据模型的组成要素数据模型通常通常由以下三部分组成:数据结构数据操作数据的完整性约束条件AnIntroductiontoDatabaseSystenm62.2.1数据结构什么是数据结构数据结构描述数据库的组成对象及对象之间的联系。数据结构描述两类内容:(1)与对象的类型、内容、性质有关。如关系模型中的属性、关系等。(2)对象之间的联系数据结构是对系统静态特性的描述AnIntroductiontoDatabaseSystenm72.2.2数据操作数据操作是指对数据库中各种对象(型)的实例(值)允许执行的操作及有关的操作规则数据操作的类型:查询、插入、删除、修改AnIntroductiontoDatabaseSystenm82.2.3数据的完整性约束条件数据的完整性约束条件完整性约束条件是一组完整性规则的集合。完整性规则是数据模型中对数据及其联系所做的制约和存储规则,用以限定符合数据模型的数据库状态以及状态的变化,以保证数据的正确、有效、相容。AnIntroductiontoDatabaseSystenm92.3主要的逻辑数据模型层次模型(HierarchicalModel)网状模型(NetworkModel)关系模型(RelationalModel)面向对象模型(ObjectOrientedModel)AnIntroductiontoDatabaseSystenm102.4层次模型层次模型是最早出现的数据模型.采用层次模型作为数据的组织方式的数据库系统称为层次数据库系统.现实世界中的很多事物具有层次关系.如:家族关系、行政机构等。AnIntroductiontoDatabaseSystenm112.4.1层次数据模型的数据结构层次模型用树形结构表示各实体及实体间的联系的数据模型称为层次模型.实体(结点)之间的联系用有向线连接.上层结点为父结点或双亲结点。下层结点为子结点或子女结点。学院教研室教师班级学生父结点子结点双亲结点子女结点父结点子结点AnIntroductiontoDatabaseSystenm122.4.3层次模型的优缺点优点层次数据模型简单,对具有一对多的层次关系的部门描述自然、直观,容易理解性能优于关系模型,不低于网状模型层次数据模型提供了良好的完整性支持缺点表示多对多联系不自然对插入和删除操作的限制多查询子女结点必须通过双亲结点插入、删除和更新操作的限制较多。要满足约束条件,应用程序的编写较复杂。AnIntroductiontoDatabaseSystenm132.5网状模型在现实世界中,事物之间的联系更多的是非层次关系的,用层次模型表示不方便,用网状模型可以克服此弊端。采用网状模型的数据库系统称为网状数据库系统。AnIntroductiontoDatabaseSystenm142.5.1网状数据模型的数据结构网状模型满足下面两个条件的基本层次联系的集合为网状模型。1.允许一个以上的结点无双亲结点;2.一个结点可以有多于一个的双亲结点。AnIntroductiontoDatabaseSystenm15网状数据模型的数据结构R1R2R3L1L2R1R2L3L1L2R3L4R4R5AnIntroductiontoDatabaseSystenm16网状数据模型的数据结构(续)学生宿舍学生教研室学院教师住宿在读设有属于举例AnIntroductiontoDatabaseSystenm172.5.3网状模型的优缺点优点能够更为直接地描述现实世界如一个结点可以有多个双亲具有良好的性能,存取效率较高缺点结构比较复杂。随着应用环境的扩大,数据库的结构就变得越来越复杂,不利于最终用户掌握DDL、DML语言复杂,用户不容易使用AnIntroductiontoDatabaseSystenm182.6关系模型关系模型是目前最常用的一种数据模型。是最重要的一种数据模型,也是目前主要采用的数据模型1970年由美国IBM公司SanJose研究室的研究员E.F.Codd提出是本课程的重点采用关系模型的数据库系统称为关系数据库系统。AnIntroductiontoDatabaseSystenm192.6.1关系数据模型的数据结构在用户观点下,关系模型中数据的逻辑结构是一张二维表,它由行和列组成。同一列的值取自同一定义域.学生登记表学号姓名年龄性别系名年级95004王小明19女社会学9595006黄大鹏20男商品学9595008张文斌18女法律学95………………表名表头数据记录列名AnIntroductiontoDatabaseSystenm20关系模型由一组关系组成。每个关系是一张二维表。一个关系有:关系名——表名关系模式——表头关系实例——数据例:学生登记表关系模式:学生登记表(学号,姓名,性别,…)关系实例:07004,王小明,女,…06021,张天,男,…AnIntroductiontoDatabaseSystenm21关系模型的基本概念关系(Relation)一个关系对应通常说的一张表。元组(Tuple)表中的一行记录即为一个元组。属性(Attribute)表中的一列即为一个属性,给每一个属性起一个名称即属性名。AnIntroductiontoDatabaseSystenm22关系模型的基本概念主码(Key)表中的某个属性组,它可以唯一确定一个元组。域(Domain)即定义域,是属性的取值范围。分量元组中的一个属性值。关系模式对关系的描述关系名(属性1,属性2,…,属性n)如学生(学号,姓名,年龄,性别,系,年级)AnIntroductiontoDatabaseSystenm23关系数据模型的数据结构(续)实体及实体间的联系的表示方法实体型:直接用关系(表)表示。属性:用属性名表示。一对一联系:隐含在实体对应的关系中。一对多联系:隐含在实体对应的关系中。多对多联系:直接用关系表示。AnIntroductiontoDatabaseSystenm24关系数据模型的数据结构(续)例1学院与学生之间的联系是一对多,表示联系:将一方的主码纳入多方学生(学号,姓名,年龄,性别,学院号,年级)学院(学院号,学院名,办公地点)例2学院与院长之间的联系:是一对一表示联系:将一方的主码纳入另一方。学院(学院号,学院名,办公地点)院长(院长编号,姓名,性别,学院号)AnIntroductiontoDatabaseSystenm25关系数据模型的数据结构(续)例3学生、课程实体学生与课程之间的联系:多对多表示联系:用“选修”关系来表示:包含双方实体的主码,还有自己的属性。学生(学号,姓名,年龄,性别,系号,年级)课程(课程号,课程名,学分)选修(学号,课程号,成绩)AnIntroductiontoDatabaseSystenm26关系数据模型的数据结构(续)关系必须是规范化的,满足一定的规范条件最基本的规范条件:关系的每一个分量必须是一个不可分的数据项。下表不符合关系模型要求:工资扣除职工号姓名职称基本工龄职务房租水电实发86051陈平讲师1059.515612115.5...........................AnIntroductiontoDatabaseSystenm272.6.2关系模型的数据操纵与完整性约束数据操作:查询、插入、删除、修改AnIntroductiontoDatabaseSystenm28关系模型的完整性约束完整性约束条件有以下三类:实体完整性参照完整性用户定义的完整性AnIntroductiontoDatabaseSystenm292.6.3关系模型的优缺点优点建立在严格的数学概念的基础上概念单一。数据结构简单、清晰,用户易懂易用实体和各类联系都用关系来表示。对数据的检索结果也是关系。具有更高的数据独立性,更好的安全保密性简化了程序员的工作和数据库开发建立的工作AnIntroductiontoDatabaseSystenm30关系模型的优缺点(续)缺点查询效率往往不如非关系数据模型为提高性能,必须对用户的查询请求进行优化增加了开发数据库管理系统的难度AnIntroductiontoDatabaseSystenm31下课了。。。追求休息一会儿。。。

1 / 31
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功