第2章数据库设计方法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第2章数据库设计方法
※1.实体关系
⑴概念模型
①概念模型的基本概念
l实体:客观存在并可相互区别的事物称为实体。实体可以是具体的事物,也可以是抽象的事件。
l实体的属性:实体所具有的某一特性称为属性。一个实体可由若干个属性来描述。
l实体的主属性:主属性也称关键字,它能惟一的标识一个实体。关键字可以是属性或属性集。
l属性的域:属性的取值范围称为该属性的域。
l实体型:具有相同属性的实体必然具有共同的特征。用实体名及其属性名的集合来描述的同类实体,称为实体型或称实体结构。
l实体集:同类型实体的集合称为实体集。
l实体的联系:实体的内部联系是指组成实体的各属性之间的联系;实体间的联系是指不同实体集之间的联系。两个实体集之间的联系可以分为下列3种:
n一对一联系(1:1):是指第一实体集中的每个实体最多只与第二实体集中的一个实体相联系,反之亦然,此即为一对一联系。
n一对多联系(1:N):是指第一实体集中的每个实体与第二实体集中的N个实体相联系,而第二实体集中的每个实体最多只与第一实体集中的一个实体相联系,此即为一对多联系。
n多对多联系(M:N):是指第一实体集中的每个实体与第二实体集中的N个实体相联系,而第二实体集中的每个实体与第一实体集中的M个实体相联系,此即为多对多联系。
②概念模型的表示方法
概念模型是对现实世界的建模,概念模型应当能够全面、准确地描述现实世界中的基本概念。概念模型最著名、最实用的方法是实体-联系方法,简称E-R方法。E-R图的使用请参阅课本第2章的2.2.1相关内容。
⑵构造E-R模型
①构造E-R模型的方法
构造E-R模型的步骤分为:确定实体、除去重复的实体、列出每个实体的属性、标记主
属性、定义联系、描述联系的类型和除去冗余关系。
②E-R模型在学分制管理系统的应用
⑶构造关系模型
①关系模型的基本概念
在关系模型中,实体及实体间的联系都是用关系来表示的。掌握如下有关的概念:
l关系:一个关系就是一张二维表。每个关系都有一个关系名。在VisualFoxPro中,一个关系,即一张二维表存储为一个文件,文件的扩展名为.dbf,此类文件称为“表”,“关系名”对应地称为“表名”。
l关系模式:关系模式是指对关系的描述。其格式为:关系名(属性名1,属性名2,……,属性名n)
l元组(记录):二维表中的行称为元组。每行是一个元组,一个元组就是一个实体。
l属性(字段):二维表中的列称为属性。每列是一个属性,每个属性都有一个属性名。
l域:与实体的属性域含义相同。
l主码:与实体的主属性(或称关键字)含义相同。
l外部关键字:指一个二维表中的某个属性是另一个二维表的关键字,其在本表中可以是关键字,也可以不是。
l关系间的联系:在关系模型中,关系间的联系,也可以说是实体间的联系,也可以是通过另一个关系来表示。
②概念模型向关系模型的转换
将E-R图转换为关系模型实际上是将实体集、属性以及联系转换为关系模式,这种转换一般遵循如下原则:
l实体集的转换规则
n概念模型中的一个实体集转换为一个关系模式,实体的属性就是关系的属性,实体的主属性就是关系的主码。
l实体集间联系的转换规则
n1:1联系的转换方法:可以转换为一个独立的关系模式,也可以与联系的任意一端实体所对应的关系模式合并。
n1:n联系的转换方法:可以转换为一个独立的关系模式,也可以与联系的任意n端实体所对应的关系模式合并。
nm:n联系的转换方法:转换为一个独立的关系模式,然后,按1:n联系的转换方法实
现。
l关系合并规则
n在关系模型中,具有相同主码的关系模式可合并。
③关系的性质
l关系必须规范化:关系中的每个字段(属性)必须是不可再分的数据单元,即不允许“表中有表”。
l一个关系中不能有相同的字段名
l同一字段的取值必须来自同一个域
l关系中不能有完全相同的记录
l关系中各记录的次序可交换
l关系中各字段的次序也可交换
5
※2.关系数据库的设计
⑴数据库设计的目的和内容
①数据库设计的目的
数据库设计的目的就是数据库设计人员根据实际应用的需要,设计一个结构合理、功能完善、使用方便、效率较高的数据库及其应用系统,以便于日后的使用、扩充和维护。
②数据库设计的内容
l结构设计:指数据库总体结构的设计,它设计出的数据库应该是一个具有最小数据冗余度、能反映不同用户的数据需求、能实现数据共享的系统。
l行为设计:指根据实际需求,设计出对数据库进行安全、完整性地访问和操作。
⑵关系数据库设计的方法和步骤
①需求分析
进行数据库设计必须首先准确地了解和分析用户的实际需求,这是数据库设计的关键。
②结构设计
分为以下三个步骤:
l概念模型(E-R模型)设计:对需求分析的结果进行总结、归纳和抽象,就可设计出相应的数据库结构。
逻辑结构(关系模型)设计:将抽象的概念结构转化为某个DBMS所支持的数据模型,并对其进行优化。在VisualFoxPro中,结构设计体现为关系模型的设计,包括:
n确定数据库
n确定表
n确定表之间的联系
l数据库物理设计:为逻辑数据模型设计一个适合的物理运行环境,包括选择存储结构、确定存取方法和确定数据的存放位置。
③行为设计
行为设计包括数据库的完整性、运算和应用程序等三大部分的设计。
l数据库的完整性设计:指保证数据的正确性、有效性和相容性,防止错误的数据进入数据库。为了维护数据库中数据的完整性,在对关系数据库执行插入、删除和修改操作时,必须遵循以下三类完整性规则:
n实体完整性规则:规定基本关系的所有主属性(主码)不能取空值。
n参照完整性规则:若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码K相对应(基本关系R和S不一定是不同的关系),则对于R中每一个元组(记录)在F 上的值必须为:取空值或者等于S中某个元组的主码值。
n用户定义的完整性规则:是针对某一具体关系数据库的约束条件。
l关系数据库的运算
n选择:是指从一个关系中选出满足条件的记录来构成一个新关系。
n投影:是指从一个关系中选出若干指定的属性(字段)来构成一个新关系。
n联接:是指从两个关系中选出字段间满足一定条件的记录来构成一个新关系。包括等值联接和自然联接。
l设计应用程序
④数据库应用系统的运行和维护