首页 > 知识点讲解
       数据模型
知识路径: > 电子商务系统程序设计基础 > 电子商务系统规划 > 电子商务系统需求分析 > 
被考次数:2次     被考频率:低频率     总体答错率:43%     知识难度系数:     
相关知识点:18个      
               数据模型的基本概念
               模型就是对现实世界特征的模拟和抽象,数据模型是对现实世界数据特征的抽象。对于具体的模型人们并不陌生,如航模飞机、地图和建筑设计沙盘等都是具体的模型。最常用的数据模型分为概念数据模型和基本数据模型。
               (1)概念数据模型,也称信息模型,是按用户的观点对数据和信息建模,是现实世界到信息世界的第一层抽象,强调其语义表达功能,易于用户理解,是用户和数据库设计人员交流的语言,主要用于数据库设计。这类模型中最著名的是实体联系模型,简称E-R模型。
               (2)基本数据模型。它是按计算机系统的观点对数据建模,是现实世界数据特征的抽象,用于DBMS的实现。基本的数据模型有层次模型、网状模型、关系模型和面向对象模型(Object Oriented Model)。
               数据模型的三要素
               数据库结构的基础是数据模型,是用来描述数据的一组概念和定义。数据模型的三要素是数据结构、数据操作和数据的约束条件。
               (1)数据结构。它是所研究的对象类型的集合,是对系统静态特性的描述。
               (2)数据操作。对数据库中各种对象(型)的实例(值)允许执行的操作的集合,包括操作及操作规则。如操作有检索、插入、删除和修改,操作规则有优先级别等。数据操作是对系统动态特性的描述。
               (3)数据的约束条件。它是一组完整性规则的集合。也就是说,对于具体的应用数据必须遵循特定的语义约束条件,以保证数据的正确、有效和相容。例如,某单位人事管理中,要求在职的“男”职工的年龄必须大于18岁小于60,工程师的基本工资不能低于1500元,每个职工可担任一个工种,这些要求可以通过建立数据的约束条件来实现。
               E-R模型
               概念模型是对信息世界建模,所以概念模型能够方便、准确地表示信息世界中的常用概念。概念模型有很多种表示方法,其中最为常用的是P.P.S.Chen于1976年提出的实体-联系方法(Entity Relationship Approach)。该方法用E-R图来描述现实世界的概念模型,称为实体-联系模型(Entity-Relationship Model,E-R模型)。
               E-R模型是软件工程设计中的一个重要方法,因为它接近于人的思维方式,容易理解并且与计算机无关,所以用户容易接受,是用户和数据库设计人员交流的语言。但是,E-R模型只能说明实体间的语义联系,还不能进一步地详细说明数据结构。在解决实际应用问题时,通常应该先设计一个E-R模型,然后再把其转换成计算机能接受的数据模型。
                      实体
                      在E-R模型中,实体用矩形表示,通常矩形框内写明实体名。实体是现实世界中可以区别于其他对象的“事件”或“物体”。例如,企业中的每个人都是一个实体。每个实体由一组特性(属性)来表示,其中的某一部分属性可以唯一标识实体,如职工号。实体集是具有相同属性的实体集合,例如,学校所有教师具有相同的属性,因此教师的集合可以定义为一个实体集;学生具有相同的属性,因此学生的集合可以定义为另一个实体集。
                      联系
                      在E-R模型中,联系用菱形表示,通常菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标注上联系的类型(1:1、1:n或m:n)。实体的联系分为实体内部的联系和实体与实体之间的联系。实体内部的联系反映数据在同一记录内部各字段间的联系。
                      (1)两个不同实体之间的联系。两个不同实体集之间存在如下三种联系类型。一对一(1:1)联系,指实体集E1中的一个实体最多只与实体集E2中的一个实体相联系。一对多(1:n)联系,表示实体集E1中的一个实体可与实体集E2中的多个实体相联系。多对多(m:n)联系,表示实体集E1中的多个实体可与实体集E2中的多个实体相联系。
                      例如,下图表示两个不同实体集之间的联系。其中:
                      电影院里一个座位只能坐一个观众,因此观众与座位之间是一个1:1的联系,联系名为V_S,用E-R图表示如下图(a)所示。
                      部门DEPT和职工EMP实体集,若一个职工只能属于一个部门,那么这两个实体集之间应是一个1:n的联系,联系名为D_E,用E-R图表示如下图(b)所示。
                      工程项目PROJ和职工EMP实体集,若一个职工可以参加多个项目,一个项目可以有多个职工参加,那么这两个实体集之间应是一个m:n的联系,联系名为PR_E,用E-R图表示如下图(c)所示。
                      
                      两个不同实体集之间的联系
                      (2)两个以上不同实体集之间的联系。两个以上不同实体集之间存在1:1:1、1:1:n、1:m:n和r:m:n的联系。例如,下图表示了三个不同实体集之间的联系。其中:
                      下图(a)表示供应商Supp、项目Proj和零件Part之间多对多对多(r:n:m)的联系,联系名为SP_P。表示供应商为多个项目供应多种零件,每个项目可用多个供应商供应的零件,每种零件可由不同的供应商供应的语义。
                      下图(b)表示病房、病人和医生之间一对多对多(1:n:m)的联系,联系名为P_D。表示一个特护病房有多个病人和多个医生,一个医生只负责一个病房,一个病人只属于一个病房的语义。
                      
                      三个不同实体集之间的联系
                      注意,三个实体集之间的多对多联系和三个实体集两两之间的多对多联系的语义是不同的。例如,供应商和项目实体集之间的“合同”联系,表示供应商为哪几个工程签了合同。供应商与零件两个实体集之间的“库存”联系,表示供应商库存零件的数量。项目与零件两个实体集之间的“组成”联系,表示一个项目由哪几种零件组成。
                      (3)同一实体集内的二元联系。同一实体集内的各实体之间也存在1:1、1:n和m:n的联系,如下图所示。
                      
                      同一实体集之间的1:n和1:1联系
                      从图中可见,职工实体集中的领导与被领导联系是1:n的。但是,职工实体集中的婚姻联系是1:1的。
                      在E-R图中有下表所示的几个主要构件。
                      
                      E-R图中的主要构件
                      说明1:在E-R图中,实体集中作为主码的一部分属性以下划线标明。另外,在实体集与联系的线段上标上联系的类型。
                      说明2:在本书中,若不引起误解,实体集有时简称实体,联系集有时简称联系。
               层次模型
               层次模型(Hierarchical Model)采用树型结构表示数据与数据间的联系。在层次模型中,每一个节点表示一个记录类型(实体),记录之间的联系用节点之间的连线表示,并且根节点以外的其他节点有且仅有一个双亲节点。
               层次模型不能直接表示多对多的联系。若要表示多对多的联系,可采用如下两种方法。
               (1)冗余节点法。两个实体的多对多联系转换为两个一对多联系。该方法的优点是节点清晰,允许节点改变存储位置。缺点是需要额外的存储空间,有潜在的数据不一致性。
               (2)虚拟节点分解法。将冗余节点转换为虚拟节点。虚拟节点是一个指引元,指向所代替的节点。该方法的优点是减少对存储空间的浪费,避免数据不一致性。缺点是改变存储位置可能引起虚拟节点中指针的修改。
               层次模型的特点是记录之间的联系通过指针实现,比较简单,查询效率高。
               层次模型的缺点是只能表示1:n的联系,尽管有许多辅助手段实现m:n的联系,但较复杂不易掌握;由于层次顺序严格和复杂,插入删除操作是限制比较多,导致应用程序编制比较复杂。1968年,美国IBM公司推出的IMS系统(信息管理系统)是典型的层次模型系统,20世纪70年代在商业上得到了广泛的应用。
 
 相关知识点:
 
软考在线指南
优惠劵及余额
在线支付
修改密码
下载及使用
购买流程
取消订单
联系我们
关于我们
联系我们
商务合作
旗下网站群
高级资格科目
信息系统项目管理师 系统分析师
系统架构设计师 网络规划设计师
系统规划与管理师
初级资格科目
程序员 网络管理员
信息处理技术员 信息系统运行管理员
中级资格科目
系统集成项目管理工程师 网络工程师
软件设计师 信息系统监理师
信息系统管理工程师 数据库系统工程师
多媒体应用设计师 软件评测师
嵌入式系统设计师 电子商务设计师
信息安全工程师
 

本网站所有产品设计(包括造型,颜色,图案,观感,文字,产品,内容),功能及其展示形式,均已受版权或产权保护。
任何公司及个人不得以任何方式复制部分或全部,违者将依法追究责任,特此声明。
本站部分内容来自互联网或由会员上传,版权归原作者所有。如有问题,请及时联系我们。


工作时间:9:00-20:00

客服

点击这里给我发消息 点击这里给我发消息 点击这里给我发消息

商务合作

点击这里给我发消息

客服邮箱service@rkpass.cn


京B2-20210865 | 京ICP备2020040059号-5 |京公网安备 11010502032051号 | 营业执照 | Copyright ©2000-2023 All Rights Reserved 软考在线版权所有