数据库概念结构设计
数据库的设计实验报告

一、实验目的1. 理解数据库设计的概念、过程和步骤。
2. 掌握数据库概念结构、逻辑结构和物理结构的设计方法。
3. 能够运用E-R图进行数据库概念结构设计。
4. 能够运用SQL语句进行数据库逻辑结构和物理结构设计。
二、实验环境1. 操作系统:Windows 102. 数据库管理系统:MySQL 5.73. 开发工具:MySQL Workbench三、实验内容1. 数据库概念结构设计2. 数据库逻辑结构设计3. 数据库物理结构设计四、实验步骤1. 数据库概念结构设计(1)分析需求,确定实体和属性以“图书管理系统”为例,确定实体和属性如下:实体:图书、读者、借阅信息属性:- 图书:书名、作者、出版社、ISBN、出版日期、分类号、库存数量- 读者:读者编号、姓名、性别、出生日期、联系电话、邮箱、住址- 借阅信息:借阅编号、图书编号、读者编号、借阅日期、归还日期、状态(2)绘制E-R图根据实体和属性,绘制E-R图如下:```图书(书名,作者,出版社,ISBN,出版日期,分类号,库存数量)读者(读者编号,姓名,性别,出生日期,联系电话,邮箱,住址)借阅信息(借阅编号,图书编号,读者编号,借阅日期,归还日期,状态) ```2. 数据库逻辑结构设计(1)确定关系模式根据E-R图,确定关系模式如下:- 图书(书名,作者,出版社,ISBN,出版日期,分类号,库存数量)- 读者(读者编号,姓名,性别,出生日期,联系电话,邮箱,住址)- 借阅信息(借阅编号,图书编号,读者编号,借阅日期,归还日期,状态)(2)编写SQL语句创建表```sqlCREATE TABLE 图书 (书名 VARCHAR(100),作者 VARCHAR(50),出版社 VARCHAR(50),ISBN VARCHAR(20),出版日期 DATE,分类号 VARCHAR(10),库存数量 INT);CREATE TABLE 读者 (读者编号 VARCHAR(10),姓名 VARCHAR(50),性别 CHAR(1),出生日期 DATE,联系电话 VARCHAR(20),邮箱 VARCHAR(50),住址 VARCHAR(100));CREATE TABLE 借阅信息 (借阅编号 VARCHAR(10),图书编号 VARCHAR(10),读者编号 VARCHAR(10),借阅日期 DATE,归还日期 DATE,状态 VARCHAR(10));```3. 数据库物理结构设计(1)确定索引根据需求,确定索引如下:- 图书表:ISBN、分类号- 读者表:读者编号- 借阅信息表:借阅编号、图书编号、读者编号(2)编写SQL语句创建索引```sqlCREATE INDEX idx_isbn ON 图书(ISBN);CREATE INDEX idx_分类号 ON 图书(分类号);CREATE INDEX idx_读者编号 ON 读者(读者编号);CREATE INDEX idx_借阅编号 ON 借阅信息(借阅编号);CREATE INDEX idx_图书编号 ON 借阅信息(图书编号);CREATE INDEX idx_读者编号 ON 借阅信息(读者编号);```五、实验结果与分析1. 通过实验,掌握了数据库设计的概念、过程和步骤。
数据库的概念结构设计

数据库的概念结构设计数据库的概念结构设计是指在设计数据库之前,需要进行的一个抽象模型化的过程,它描述了数据库中各种对象和它们之间关系的逻辑结构。
数据库的概念结构设计是数据库设计的一个重要环节,它的目的是确定数据库的基本结构和用于描述和组织数据的各种概念、规则、关系和约束。
1.实体和实体类型:实体是现实世界中具有独立存在和区分性质的事物,实体类型是指一类具有相同性质的实体的集合。
在概念结构设计中,需要确定数据库中包含哪些实体类型,以及每个实体类型包含哪些属性。
2.属性和属性域:属性是指实体具有的其中一种特性或性质,属性可以是简单的或复杂的。
属性域是属性可能取值的范围或类型,例如整数、字符串等。
在概念结构设计中,需要确定每个实体类型包含哪些属性,并为每个属性定义属性域。
5.约束和规则:约束是指对数据库中数据有效性的限制,可以是简单的或复杂的逻辑条件。
规则是指对数据库中数据操作的限制和规范,例如插入、删除、更新等操作的规则。
在概念结构设计中,需要确定数据库中存在哪些约束和规则。
6.数据流和过程:数据流是指数据库中数据的流动过程,过程是指对数据库中数据进行操作的方法,例如查询、修改等过程。
在概念结构设计中,需要确定数据库中的数据流和过程,以及它们之间的关系和约束。
数据库的概念结构设计是数据库设计的基础,它为后续的物理结构设计、逻辑结构设计和实施提供了指导。
一个好的概念结构设计可以使数据库的性能和效率得到最大的提升,同时也可以保证数据库中数据的一致性和完整性。
因此,在进行数据库设计时,需要认真进行概念结构设计的工作,合理地组织和描述数据的逻辑结构,为后续的数据库设计和实施奠定良好的基础。
数据库第7章-数据库设计(2)-概念结构设计

第七章 数据库设计
7.1 7.2 7.3 7.4 7.5 7.6 7.7 7.8 数据库设计概述 需求分析 概念结构设计 逻辑结构设计 数据库的物理设计 数据库实施 数据库运行与维护 小结
需求分析阶段
调查 机构 情况
熟悉 业务 活动
明确 用户 需求
确定 系统 边界
分析 系统 功能
分析 系统 数据
编写 分析 报告
概念 设计 阶段
数据 流程图 DFD
数据库 设计人员
用户
数据 字典 DD
7.3 概念结构设计
什么是概念结构设计
需求分析阶段描述的用户应用需求是现实世界 的具体需求 将需求分析得到的用户需求抽象为信息结构即
概念模型的过程就是概念结构设计
概念结构是各种数据模型的共同基础,它比数
性别
分配
1
住房
设计分E-R图的步骤
(1)以数据字典为出发点定义E-R图。
实体与属性是相对而言的。
同一事物,在一种应用环境中作为“属性”, 另一种应用环境中就必须作为“实体”。 例: 学 校 中 的 系 , 在 某 种 应 用 环 境 中 , 它 只 是 作为 “学生”实体的属性,表明学生属于哪个系; 另一种环境中,由于需要考虑一个系的系主任、
教师人数、学生人数、办公地点等,这时它就需
“is member of”
张英
王平
刘勇
……
赵斌
2. 聚集(Aggregation)
定义某一类型的组成成分 它抽象了对象内部类型和成分之间“is part of”的语义 在E-R模型中若干属性的聚集组成实体型,就是这种抽象
实体型
学 生
第二章 数据库的概念结构设计

第二章数据库的概念结构设计将需求分析得到的用户需求抽象为信息结构(即概念模型)的过程就是概念结构设计。
它是整个数据库设计的关键步骤。
本章主要介绍以下内容:•数据模型。
•概念模型。
•概念结构设计的方法与步骤。
第一节数据模型一、数据数据是数据库中存储的基本对象,也是数据模型的基本元素。
1.数据在数据库中描述事物的符号记录称为数据,是存储的基本对象。
计算机是人们解决问题的辅助工具,而解决问题的前提是对问题存在条件及环境参数的正确描述,在现实世界中人们可以直接用自然语言来描述世界,为了把这些描述传达给计算机,就要将其抽象为机器世界所能识别的形式。
例如,我们在现实世界中用以下语言来描述一块主板:编号为0001的产品为“技嘉主板”,其型号为GA-8IPE1000-G,前端总线800MHz。
如果将其转换为机器世界中数据的一种形式则为:0001,技嘉主板,GA-8IPE1000-G,800MHz。
因此从现实世界中的数据到机器世界中的符号记录形式的数据,还需要一定的转换工作。
2.数据描述在数据库设计的不同阶段都需要对数据进行不同程度的描述。
在从现实世界到计算机世界的转换过程中,经历了概念层描述、逻辑层描述及存储介质层描述三个阶段。
在数据库的概念设计中,数据描述体现为“实体”、“实体集”、“属性”等形式,用来描述数据库的概念层次;在数据库的逻辑设计中,数据描述体现为“字段”、“记录”、“文件”、“关键码”等形式,用来描述数据库的逻辑层次;在数据库的具体物理实现中,数据描述体现为“位”、“字节”、“字”、“块”、“桶”、“卷”等形式,用来描述数据库的物理存储介质层次。
二、数据模型模型是对现实世界中的事物、对象、过程等客观系统中感兴趣的内容的模拟和抽象表达。
如一座大楼模型、一架飞机模型就是对实际大楼、飞机的模拟和抽象表达,人们从模型可以联想到现实生活中的事物。
数据模型也是一种模型,它是对现实世界数据特征的抽象。
数据模型一般应满足三个要求:一是能比较真实地模拟现实世界;二是容易被人们理解;三是便于在计算机上实现。
数据结构与数据库设计的关系

数据结构与数据库设计的关系数据结构和数据库设计是计算机科学中两个非常重要的概念。
数据结构是一种定义数据组织方式和操作的方式,而数据库设计是指设计和组织数据库以便有效存储和检索数据的过程。
本文将探讨数据结构与数据库设计之间的关系以及它们在计算机科学中的重要性。
一、数据结构与数据库的概念数据结构是计算机科学中研究数据组织和存储方式的一门学科。
它研究如何通过合适的数据结构来组织和存储数据,以便能够高效地进行数据访问和操作。
数据结构包括各种数据类型、数据组织方式和相应的操作方法,例如链表、栈、队列、树和图等。
数据库是指按照一定的数据模型组织和存储数据的集合。
数据库设计是指根据实际需求设计和构建数据库的过程,包括确定数据库的结构、建立表格、定义字段和设置关系等。
数据库通常包含多个表格,每个表格由多个字段组成,它们之间通过关系建立连接。
二、数据结构在数据库设计中的作用数据结构在数据库设计中起着至关重要的作用。
设计一个好的数据结构可以确保数据库的高效性、可靠性和扩展性。
以下是数据结构在数据库设计中的几个重要作用:1. 数据表的组织方式:数据表是数据库存储数据的基本单位。
通过合适的数据结构,可以有效地组织表格之间的关系,例如主键、外键和索引等。
这些结构可以提高数据的访问速度和查询效率。
2. 数据操作的效率:数据库的增删改查操作都需要对数据进行操作。
不同的数据结构适用于不同的操作,例如栈和队列适用于先入后出和先入先出的操作。
合理选择数据结构可以提高数据操作的效率和性能。
3. 数据存储的方式:数据库需要将数据以某种方式存储在物理介质上。
选择合适的数据结构可以提高数据存储的紧凑性和存取速度,从而提高数据库的整体性能。
三、数据库设计对数据结构的要求数据库设计对数据结构也有一些要求,主要包括以下几点:1. 数据一致性:数据库中的数据应该保持一致性,即同一份数据在不同的地方应该保持一致。
数据结构应该能够满足对数据的完整性和一致性的要求。
数据库的概念结构设计 逻辑结构设计 物理结构设计

数据库的概念结构设计逻辑结构设计物理结构设计下载提示:该文档是本店铺精心编制而成的,希望大家下载后,能够帮助大家解决实际问题。
文档下载后可定制修改,请根据实际需要进行调整和使用,谢谢!本店铺为大家提供各种类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by this editor. I hope that after you download it, it can help you solve practical problems. The document can be customized and modified after downloading, please adjust and use it according to actual needs, thank you! In addition, this shop provides you with various types of practical materials, such as educational essays, diary appreciation, sentence excerpts, ancient poems, classic articles, topic composition, work summary, word parsing, copy excerpts, other materials and so on, want to know different data formats and writing methods, please pay attention!数据库的概念结构设计、逻辑结构设计和物理结构设计1. 概述数据库的设计过程通常包括概念结构设计、逻辑结构设计和物理结构设计三个阶段。
《数据库设计》ppt课件

数据库设计流程与步骤
步骤
1. 收集和分析用户需求,确定系统功能和性能要求。
2. 选择合适的数据模型,设计概念结构,形成概念模式。
数据库设计流程与步骤
02
03
04
01
数据库设计流程与步骤
3. 将概念模式转换为逻辑模式,进行逻辑优化。
4. 选择物理存储结构,设计物理模式,进行物理优化。
5. 用DDL定义数据库结构,组织数据入库,编制与调试应用程序。
《数据库设计》ppt课件
目录
数据库设计概述 需求分析 概念结构设计 逻辑结构设计 物理结构设计 数据库实施与维护 案例分析与实战演练
01
CHAPTER
数据库设计概述
数据库设计是指根据用户需求,运用数据库技术,设计数据库结构、建立数据库及其应用系统的过程。
定义
数据库设计是信息系统开发过程中的重要环节,直接影响系统的性能、可扩展性、可维护性等。
数据模型优化与规范化
外模式/内模式映射
定义用户子模式与逻辑模式之间的映射关系,实现数据的逻辑独立性和物理独立性。
安全性控制
在用户子模式设计中考虑数据的安全性控制,如访问权限、加密等。
视图设计
根据用户需求和安全控制要求,设计相应的视图来限制用户对数据的访问。
用户子模式设计
05
CHAPTER
物理结构设计
联系
用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1:1, 1:n, m:n)。
码
在属性下方加上下划线表示该属性为码属性。
视图集成
将多个用户的局部视图合并成一个全局视图的过程。包括合并各个局部视图的实体、属性和联系,生成全局视图。
数据库概念结构、逻辑结构与物理结构设计实验报告

实验一 数据库概念结构、逻辑结构与物理结构设计一、实验目的1、熟练掌握概念结构、逻辑结构与物理结构的设计方法。
2、熟练使用PowerDesigner 进行CDM 、PDM 设计。
3、学会使用PowerDesigner 检测CDM 模型的方法。
4、熟练掌握E-R 图转换为关系模式的方法。
5、掌握使用PowerDesigner 将CDM 转化为PDM 的方法。
二、实验内容1、绘制学籍管理E-R 图。
2、将概念模型转换成物理模型。
3、使用PowerDesigner 进行CDM 、PDM 设计。
三、实验步骤1、绘制学籍管理系统的E-R 图。
姓名出生日期学生班级班级编号班级名称性别学号管理所在学院学院名称学院编号隶属n1n课程教师课程类型职称出生日期成绩性别姓名选课授课聘任就职学期课程编号课程名称属于课程介绍先修课程学分授课地点教师编号参加工作日期职称编码职称课程类型码类型说明mn1n1mm学期总学时m1n12、使用PowerDesigner 设计CDM 。
①启动PowerDesigner。
②新建CDM模型。
③创建实体。
④创建实体之间的关系。
⑤创建实体之间的联系。
⑥验证CDM模型的正确性。
3、将CDM转换为PDM。
在CDM设计界面上,选择“Tools”→“Check Model”命令,检查CDM的正确性。
显示结果如下:可见不存在错误,选择“Tools”→“Generate Physical Data Model”命令,将CDM转换为PDM 并设置名称“学籍管理”。
四、实验结果附“学籍管理系统”CDM 图和PDM 图五、实验总结对概念结构、逻辑结构与物理结构的设计方法了解和掌握,学会了使用PowerDesigner 设计“学籍管理系统”CDM 模型。
掌握使用PowerDesigner 将CDM 转化为PDM 的方法。
班级班级编号学院编号班级名称INTEGER INTEGER VARCHAR(20)<pk><fk>学生学号班级编号姓名性别出生日期LONG INTEGER VARCHAR(10)CHAR(2)DATE<pk><fk>学院学院编号学院名称INTEGER VARCHAR(30)<pk>教师教师编号职称编码学院编号姓名性别出生日期参加工作日期INTEGER CHAR(2)INTEGER VARCHAR(10)CHAR(2)DATE DATE<pk><fk1><fk2>课程课程编号课程类型编码教师编号课程名称先修课程总学时学分课程介绍学期授课地点授课学期INTEGER INTEGER INTEGER VARCHAR(16)INTEGERNUMERIC(3,0)SMALLINT VARCHAR(20)CHAR(11)VARCHAR(30)CHAR(11)<pk><fk2><fk1>课程类型课程类型编码类型说明INTEGER VARCHAR(20)<pk>职称职称编码职称CHAR(2)VARCHAR(20)<pk>选课学号课程编号成绩LONG INTEGER NUMERIC(3,1)<pk,fk1><pk,fk2>。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
逐一设计分E-R图(续)
❖ 下图是第一层数据流图,虚线部分划出了系统边界
图7.18 销售管理子系统第一层数据流图
逐一设计分E-R图(续)
❖ 上图中把系统功能又分为4个子系统,下面四个图是第二 层数据流图
图7.19 接收订单
逐一设计分E-R图(续)
图7.20 处理订单
逐一设计分E-R图(续)
(4) 易于向关系、网状、层次等各种数据模型转换
概念结构(续)
❖ 描述概念模型的工具
E-R模型
7.3 概念结构设计
7.3.1 概念结构 7.3.2 概念结构设计的方法与步骤 7.3.3 数据抽象与局部视图设计 7.3.4 视图的集成
7.3.2 概念结构设计的方法与步骤
❖ 设计概念结构的四类方法 自顶向下
义 在E-R模型中,实体型就是这种抽象
数据抽象(续)
数据抽象(续)
2. 聚集(Aggregation)
定义某一类型的组成成分 它抽象了对象内部类型和成分之间“is part of”的
语义 在E-R模型中若干属性的聚集组成了实体型,就
是这种抽象
数据抽象(续)
聚集
数据抽象(续)
▪ 复杂的聚集,某一类型的成分仍是一个聚集
职工号→部门号 职工和产品之间多对多的联系可表示为:
(职工号,产品号)→工作天数 得到函数依赖集FL
消除冗余的方法(续)
2. 求FL的最小覆盖GL ,差集为D = FL-GL。 逐一考察D中的函数依赖,确定是否是冗余的联 系,若是,就把它去掉。
更复杂的聚集
数据抽象(续)
3. 概括(Generalization) 定义类型之间的一种子集联系 它抽象了类型之间的“is subset of”的语义 概括有一个很重要的性质:继承性。子类继承超 类上定义的所有抽象。
注:原E-R模型不具有概括,本书对E-R模型作了扩 充,允许定义超类实体型和子类实体型。
⒈ 选择局部应用
❖ 在多层的数据流图中选择一个适当层次的数 据流图,作为设计分E-R图的出发点
❖ 通常以中层数据流图作为设计分E-R图的依 据
选择局部应用(续)
设计分E-R图的出发点
⒉ 逐一设计分E-R图
❖ 任务
将各局部应用涉及的数据分别从数据字典中抽 取出来
参照数据流图,标定各局部应用中的实体、实 体的属性、标识实体的码
异名同义(一义多名):同一意义的对象在不同 的局部应用中具有不同的名字
例,有的部门把教科书称为课本 有的部门则把教科书称为教材
注:命名冲突可能发生在属性级、实体级、联系级上。 其中属性的命名冲突更为常见。
⒊ 结构冲突
❖ 三类结构冲突
同一对象在不同应用中具有不同的抽象 例,“课程”在某一局部应用中被当作实体
❖ 例1, 实体E1与E2在局部应用A中是多对多联系,而 在局部应用B中是一对多联系
例2, 在局部应用X中E1与E2发生联系,而在局部应用 Y中E1、E2、E3三者之间有联系。
❖解决方法:根据应用语义对实体联系的类型进行综 合或调整。(P221图7.27)
消除不必要的冗余,设计基本E-R图
❖ 基本任务
❖Q4=∑Q5 ❖一旦Q5修改后就应当触发完整性检查,对Q4进行修改
消除冗余的方法(续)
❖ 规范化理论
函数依赖的概念提供了消除冗余联系的形式化工 具
消除冗余的方法(续)
方法
1. 确定分E-R图实体之间的数据依赖 ,并用实体码之 间的函数依赖表示。
劳动人事管理的分E-R图
消除冗余的方法(续)
上图中, 部门和职工之间一对多的联系可表示为:
作为实体加入分E-R图 (4) 工厂对大宗订货给予优惠
逐一设计分E-R图(续)
❖ 得到分E-R图如下图所示
销售管理子系统的分E-R图
逐一设计分E-R图(续)
对每个实体定义的属性如下:
顾客:{顾客号,顾客名,地址,电话,信贷状况,账目 余额}
订单:{订单号,顾客号,订货项数,订货日期,交货日 期,工种号,生产地点}
数据库系统概论
An Introduction to Database System
第七章 数据库设计(续1)
第七章 数据库设计
7.1 数据库设计概述 7.2 需求分析 7.3 概念结构设计 7.4 逻辑结构设计 7.5 数据库的物理设计 7.6 数据库实施和维护 7.7 小结
7.3 概念结构设计
确定实体之间的联系及其类型(1:1,1:n, m:n)
逐一设计分E-R图(续)
❖ 两条准则:
❖属性不能再具有需要描述的性质。即属性必须 是不可分的数据项,不能再由另一些属性组成。
❖属性不能与其他实体具有联系。联系只发生在 实体之间。
符合上述两条特性的事物一般作为属性对待。 为了简化E-R图的处置,现实世界中的事物凡能
结构冲突(续)
学生
学号
姓名
性别
平均成绩
(a)在局部应用A中
结构冲突(续)
学生
姓名 学号 出生日期 所在系 年级 (b)在局部应用B中
结构冲突(续)
学生
姓名
政治面貌
学号
(c)在局部应用C中
结构冲突(续)
学生
学号 姓名
出生 日期
政治 面貌
所在系 年级 性别
平均 成绩
(d)合并后
实体之间的联系在不同局部视图中呈现不同的 类型
合并分E-R图,生成初步E-R图(续)
❖ 冲突的种类
属性冲突 命名冲突 结构冲突
⒈ 属性冲突
❖ 两类属性冲突
属性域冲突
➢ 属性值的类型 ➢ 取值范围 ➢ 取值集合不同
属性取值单位冲突
例1, 由于学号是数字,因此某些部门(即局部应用) 将学号定义为整数形式,而由于学号不用参与运算,因此另一 些部门(即局部应用)将学号定义为字符型形式。
逐一设计分E-R图(续)
职称作为一个实体
逐一设计分E-R图(续)
病房作为一个实体
逐一设计分E-R图(续)
仓库作为一个实体
逐一设计分E-R图(续)
[实例]销售管理子系统分E-R图的设计
❖销售管理子系统的主要功能:
处理顾客和销售员送来的订单 工厂是根据订货安排生产的 交出货物同时开出发票 收到顾客付款后,根据发票存根和信贷情况进行应收
❖ 消除不必要的冗余后的初步E-R图称为基本E-R图
消除冗余的方法
❖ 分析方法
以数据字典和数据流图为依据 根据数据字典中关于数据项之间的逻辑关系
消除冗余的方法(续)
消除冗余
消除冗余的方法(续)
效率VS冗余信息
❖需要根据用户的整体需求来确定
若人为地保留了一些冗余数据,则应把数据字典中 数据关联的说明作为完整性约束条件
用双竖边的矩形框表示子类, 用直线加小圆圈表示超类-子类的联系
❖ 数据抽象的用途
对需求分析阶段收集到的数据进行分类、组织 (聚集),形成 ❖实体 ❖实体的属性,标识实体的码 ❖确定实体之间的联系类型(1:1,1:n,m:n)
数据抽象(续)
概括
局部视图设计
设计分E-R图的步骤: ⒈选择局部应用 ⒉逐一设计分E-R图
7.3.4 视图的集成
❖ 各个局部视图即分E-R图建立好后,还需要 对它们进行合并,集成为一个整体的数据概 念结构即总E-R图。
视图集成的两种方式
❖ 多个分E-R图一次集成
➢一次集成多个分E-R图 ➢通常用于局部视图比较简单时
视图的集成(续)
❖ 逐步集成
➢ 用累加的方式一次集成两个分E-R图
视图的集成(续)
图7.21 开发票
逐一设计分E-R图(续)
图7.22 支付过账
逐一设计分E-R图(续)
分E-R图的框架
逐一设计分E-R图(续)
❖ 参照第二层数据流图和数据字典,遵循两个准则, 进行如下调整:
(1) 订单与订单细节是1∶n的联系 (2) 原订单和产品的联系实际上是订单细节和产品的
联系。 (3) 图7.21中“发票主清单”是一个数据存储,不必
逐步扩张策略
概念结构设计的方法与步骤(续)
混合策略
➢ 将自顶向下和自底向上相结合,用自顶向下策略设计 一个全局概念结构的框架,以它为骨架集成由自底向 上策略中设计的各局部概念结构。
概念结构设计的方法与步骤(续)
❖ 常用策略
自顶向下地进行需求分析 自底向上地设计概念结构
概念结构设计的方法与步骤(续)
❖ 自底向上设计概念结构的步骤
第1步:抽象数据并设计局部视图 第2步:集成局部视图,得到全局概念结构
7.3 概念结构设计
7.3.1 概念结构 7.3.2 概念结构设计的方法与步骤 7.3.3 数据抽象与局部视图设计 7.3.4 视图的集成
7.3.3 数据抽象与局部视图设计
❖ 数据抽象 ❖ 局部视图设计
消除不必要的冗余,设计生成基本E-R图
分E-R图
合并
初步E-R图
可能存在冗余的数据 和冗余的实体间联系
消除不必要的冗余
基本E-R图
消除不必要的冗余,设计基本E-R图(续)
❖ 冗余 ❖ 消除冗余的方法
1.冗余
❖ 冗余的数据是指可由基本数据导出的数据 冗余的联系是指可由其他联系导出的联系
❖ 冗余数据和冗余联系容易破坏数据库的完整性,给 数据库维护增加困难
数据抽象
❖ 抽象是对实际的人、物、事和概念中抽取所 关心的共同特性,忽略非本质的细节,并把 这些特性用各种概念精确地加以描述。
概念结构是对现实世界的一种抽象
数据抽象(续)
❖ 三种常用抽象 1. 分类(Classification)
定义某一类概念作为现实世界中一组对象的类型 这些对象具有某些共同的特性和行为 它抽象了对象值和型之间的“is member of”的语