当前位置:首页 > 第02章数据基本理论
联系反映的是实体集之间实体对应情况。若一个联系发生在两个实体集之间,称为二元联系;若联系发生在一个实体集内部,如球队集的比赛联系,则称为一元联系或递归联系;联系也可以同时在三个或更多实体集之间发生,称为多元联系。如在销售联系中,销售员、商品、顾客通过一个销售行为同时联系在一起,从而使销售联系成为三元联系。
2.4.2 ER图
ER模型通过描述系统内所有实体及其属性以及实体间联系来建立MIS的概念模型。1976年P.P.Chen提出实体-联系方法,用实体联系(ER)图来表示实体联系模型。由于ER图简便直观,这种表示法得到了广泛使用。依照一定原则,ER图可以方便地转换为关系模型。
在ER图中,只用到很少几种符号。在画出系统ER图时,将所有的实体型及其属性、实体间的联系全部画在一起,便得到系统的ER模型。下面是使用的符号及含义。
矩形框中写上实体名表示实体型。
椭圆框中写上属性名,在实体或联系和它的属性间连上连线。作为实体码
的属性下画一条下划线。
菱形框中写上联系名,用连线将相关实体连起来,并标上联系类别。
如果一个系统的ER图中实体和属性较多,为了简化最终的ER图,可以将各实体及其属性单独画出,在联系图中只画出实体间的联系。
【例2-13】设计例1-1所示教学管理数据库的ER图。
首先识别实体类。实体是独立存在的对象。教学管理系统中的实体包括:学院、专业、学生、课程。
学院实体的属性:学院编号、学院名称、院长、办公电话。 专业实体的属性:专业编号、专业名称、专业类别。
学生实体的属性:学号、姓名、性别、生日、民族、籍贯、简历、登记照。 课程实体的属性:课程编号、课程名称、课程类别、学分。
学院与专业发生1:n联系,一个专业只由一个学院设置,一个学院可以有若干个专业。
学院与课程发生1:n联系,一门课程只由一个学院开设,一个学院开设多门课程。 学生与专业发生n:1联系,每名学生主修一个专业,一个专业有多名学生就读。 学生与课程发生m:n联系。一名学生可选修多门课程,并获得一个成绩,一门课程有多名学生选修。
教学管理系统的ER图如图2.5所示。
在ER图中,每类实体只出现一次,实体名不可重复。
34 34
图2.5 教学管理系统ER图
2.4.3 ER模型向关系模型转化
ER模型需转化为关系模型,才能为DBMS所支持。转化方法可以归纳为以下几点。 (1)每个实体型都转化为一个关系模式。
给该实体型取一个关系模式名,实体型的属性成为关系模式的属性。实体码成为关系模式的主键。
(2)实体间的每一种联系都转化为一个关系模式。
转换的方式是:给联系取一个关系模式名,与联系相关的各实体的码成为该关系模式的属性,联系自身的属性成为该关系模式其余的属性。
(3)对以上转化后得到的关系模式结构按照联系的不同类别进行优化。
联系有三种类型,转化为关系模式后,与其他关系模式可进行合并优化。
1:1的联系,一般不必要单独成为一个关系模式,可以将它与联系中的任何一方实体转化成的关系模式合并(一般与元组较少的关系合并)。
1:n的联系也没有必要单独作为一个关系模式,可将其与联系中的n方实体转化成的关系模式合并。
m:n的联系必须单独成为一个关系模式,不能与任何一方实体合并。
按照以上方法,将例2-12的ER模型转化为关系模型,得到例1-2的关系模型。
2.4.4 设计ER模型的进一步探讨
当信息系统比较复杂时,设计正确的ER模型非常必要,但也是较为困难的事情。基本方法,是从局部到整体。先将每个局部应用的ER图设计出来,然后再进行优化集成。
设计ER模型的关键是识别初始的实体和联系。一般而言,在现实世界中独立存在的对象,就是实体,一般用名词命名;而反映企业或用户业务、行为的对象,大多涉及不同的实体,一般用动词命名,这个就是联系。
35
35
实体或联系一般都需要使用属性来描述。根据前述ER模型转化为关系模型的方法可知,实体或联系的属性要转化为关系的属性。在关系模型中,属性是不可分的原子属性,因此,在ER模型中的属性也应是不可分的。
但在初始ER模型中,实体或联系的属性可能不是原子属性,对于这类属性,必须进行处理和转换。
实体或联系的属性根据其取值的特点可按如下类型划分。
(1)简单属性和复合属性。简单属性也叫原子属性,是指不能再分为更小部分的属性。而复合属性是指有内部结构、可以进一步划分为更小组成部分的属性。
(2)单值属性和多值属性。如果某属性任何时候都只能有单独一个值,则称该属性为单值属性,否则为多值属性。
(3)允许和不允许取空值属性。允许取空值指允许实体在某个属性上没有值,这时使用空值(NULL)表示。NULL表示属性值未知或不存在。而属性不允许取空值,则意味所有实体在该属性上都有确定的取值。
(4)基本属性和派生属性。派生属性的值是从其他相关属性的值计算出来的。
在最终ER图中,必须消去多值和复合属性,因此对它们需要进一步处理。一般情况下,单值复合属性可以按子属性分解为简单属性;多值简单属性可将多值转化为多个单值简单属性(适合值较少的情况),或者将该多值属性转化为实体对待;多值复合属性则需要转化为实体来处理。
2.4.5 术语对照
数据库设计过程经过了从概念模型到关系模型,再到利用DBMS(如Access)建立计算机上物理数据库的各个环节。
在各个不同环节,为了保持概念的独立性和完整性,分别使用了不同的术语。为方便读者进行比较,这里将常用的术语对照列出(表2.18)。
表2.18 术语对照表 实体联系模型 实体集 实体型 实体 属性 域 实体码 联系 关系模型 关系 关系模式 元组 属性 域 候选键、主键 外键 表 表结构 记录(行) 字段(列) 数据类型 不重复索引、主键 外键(关系) Access数据库 本书除实体联系模型和关系理论部分,其他地方都使用Access数据库中的术语。
36 36
2.5 销售管理案例数据库设计
“进、销、存”是很多企业的主要业务类型。而在管理信息系统中,“进、销、存”是最典型的模式。本书重点介绍某中小型书店图书销售管理信息系统的数据库设计。
2.5.1 需求调查与分析概述
根据系统开发方法,首先必须根据用户要求,展开系统调查分析,在此基础上写出系统的“系统调查与需求分析报告”。报告是在对现有的信息处理和管理业务进行调查分析的基础上,结合用户对将要开发的系统的要求,提出新系统的基本目标。
报告的主要内容包括:企业组织结构、用户业务分析、数据流图、数据字典等,需求分析报告需将用户需求的具体内容表述清楚。
用户需求主要由两个部分组成:信息需求和功能需求。
信息需求即新系统应该收集、整理、存储、处理的所有数据,包括从最基本的数据项(如:图书名)到关联在一起的数据集合(如图书信息,由“书名、作者、出版社、定价”等若干项数据组成)。报告对此都应该给出详细、准确、完整、无异义的描述。
由于信息在系统中会有处理要求和状态的变化,与信息需求联系在一起的就是处理功能需求。功能需求是新系统应该实现的业务功能,如数据输入、修改、查询汇总、报表打印等。
1.组织结构
对组织结构的分析有助于分析业务范围与业务流程。书店的组织结构如图2.6所示。
图2.6 书店组织结构简图
其中,书库是保存图书的地方;购书和服务部负责采购计划、读者服务、图书预订等业务;售书部负责图书的销售。财务部负责资金管理;人事部负责员工管理与业务考核。
2.业务分析
对于信息处理系统来说,划分系统边界很重要,即哪些功能由计算机来完成,哪些工作在计算机外完成。这些要通过业务分析确定。同时,业务流程中涉及的相关数据也通过业务分析得到归类和明确。在业务分析的基础上,确定数据流图和数据字典。
图书销售管理系统主要包含以下业务内容。
(1)进书业务。采购员根据事先的订书单采购图书。然后将图书入库,同时登记图书入库数据。
本项业务涉及的数据单据有:进书单(含有进书单明细)以及书库账本。
37
37
共分享92篇相关文档