数据库系统基础教程第4章高级数据库模型.pptx
《数据库系统基础教程第4章高级数据库模型.pptx》由会员分享,可在线阅读,更多相关《数据库系统基础教程第4章高级数据库模型.pptx(69页珍藏版)》请在课桌文档上搜索。
1、关系数据模型,数据模型通常由数据结构、数据操作和数据的约束条件三个要素组成。数据结构:属性、元组、关系(关系运算)、视图、索引数据操作:DDL(create/alter/drop)、DML(select/insert/delete/update)、事务、游标、存储过程数据的约束:主键、外键、check约束、触发器、断言,2023/4/25,数据库技术与应用,2023/4/25,电影数据库模式,Movies(title,year,length,genre,studioName,producerC)名称 年份 长度(分钟)流派 电影公司名称 制片证书号,MovieStar(name,address
2、,gender,birthdate)姓名 住址 性别 生日,StarsIn(movieTitle,movieYear,starName)影片名称 年份 主演姓名,MovieExec(name,address,cert,netWorth)制片人姓名 住址 制片证书号 净资产,Studio(name,address,presC)电影公司名称 地址 老总证书号,教材中使用的电影数据库模式:,如何来设计数据库,一个新数据库建立过程是从设计阶段开始,提出并回答存储什么信息,信息元素之间如何关联,假定有什么样的约束,诸如键或者参考的完整性,等等。,2023/4/25,第四章,第三章,2023/4/25,第
3、四章 高级数据库模型,学习目标,学习E-R模型掌握E-R图的画法掌握数据库设计的基本原则、方法和步骤能根据要求,完成数据库模式的设计,2023/4/25,数据库技术与应用,2023/4/25,为什么需要设计数据库,修建茅屋需要设计吗?,修建大厦需要设计吗?,结论:当数据库比较复杂时我们需要设计数据库,2023/4/25,为什么需要设计数据库,良好的数据库设计:节省数据的存储空间能够保证数据的完整性方便进行数据库应用系统的开发,糟糕的数据库设计:数据冗余、存储空间浪费内存空间浪费数据更新和插入的异常,2023/4/25,数据库设计的基本步骤,数据库设计分为以下六个阶段:需求分析概念结构设计逻辑结
4、构设计物理设计数据库实施数据库运行和维护,2023/4/25,需求分析,概念结构设计,逻辑结构设计,物理设计,数据库实施,运行维护,数据库设计的六个阶段,是整个数据库设计的关键。通过对用户需求进行综合、归纳与抽象,形成概念模型,准确了解与分析用户需求(包括数据与处理),将概念结构转换为某个DBMS所支持的数据模型,对其进行优化,为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法),运用DBMS提供的数据语言、工具及宿主语言,根据逻辑设计和物理设计的结果:建立数据库、编制与调试应用程序、组织数据入库、并进行试运行,在数据库系统运行过程中必须不断地对其进行评价、调整与修改。,2
5、023/4/25,一、需求分析,需求分析就是分析用户的需要与要求需求分析是设计数据库的起点需求分析的结果是否准确地反映了用户的实际要求,将直接影响到后面各个阶段的设计,并影响到设计结果是否合理和实用,2023/4/25,6.2.1 需求分析的任务,需求分析的任务是:是对数据库应用系统所要处理的对象进行全面了解,大量收集用来实现系统目标的各类基本数据以及用户对数据库信息的需求、对基本数据进行加工处理的需求、对数据库安全性和完整性的需求。,调查分析用户活动,收集和分析需求数据,确定系统边界,编写系统分析报告,2023/4/25,数据库技术与应用,6.2.2 需求分析的方法,调查数据库应用系统所涉及
6、用户的各部门的组成情况、各部门的职责、各部门的业务及其流程,确定系统功能范围,明确哪些业务活动的工作由计算机完成,哪些由人工来做。了解用户对数据库应用系统的各种要求,包括信息要求、处理要求、安全性和完整性要求。如各个部门输入和使用什么数据,如何加工处理这些数据,处理后的数据的输出内容、格式及发布的对象等。深入分析用户的各种需求,并用数据流图描述整个系统的数据流向和对数据进行处理的过程,描述数据与处理之间的联系。分析系统数据,用数据字典描述数据流图中涉及的各数据项、数据结构、数据流、数据存储和处理过程。,2023/4/25,数据库技术与应用,1.调查用户需求的步骤,调查组织机构情况 了解组织部门
7、的组成情况、各部门的职责等 调查各部门的业务活动情况 各个部门输入和使用什么数据、如何加工处理这些数据、输出什么信息、输出到什么部门、输出结果的格式是什么 在熟悉业务活动的基础上,协助用户明确对新系统的各种要求。信息要求、处理要求、完全性与完整性要求 对前面调查的结果进行初步分析确定新系统的边界确定哪些功能由计算机完成或将来准备让计算机完成确定哪些活动由人工完成 由计算机完成的功能就是新系统应该实现的功能。,2023/4/25,2.调查方法,常用调查方法跟班作业开调查会请专人介绍询问设计调查表请用户填写查阅记录,2023/4/25,3、进一步分析和表达用户需求,分析和表达用户的需求的常用方法结
8、构化分析方法(Structured Analysis,简称SA方法)SA方法从最上层的系统组织机构入手,采用自顶向下、逐层分解的方式分析系统,并用数据流图和数据字典描述系统。,2023/4/25,【例】学生选课信息管理系统,需求功能如下:数据库系统中存储有学生信息、课程信息、教师信息等数据;能够输入、修改、查询相关信息,如查询学生信息、课程信息、教师信息等;能够查看和修改学生选择了哪些课程及其成绩;能够查看和修改教师教授哪些课程及具体上课地点;根据不同的条件对学生选修课程情况进行统计。,2023/4/25,6.2.3 数据字典,数据字典是通过对系统需求的调查研究,并且进行详细的数据收集和数据分
9、析所获得的主要成果。因此,数据字典是数据库设计的基础和依据,并且在整个数据库设计中占有非常重要的地位。在需求分析阶段,数据字典通常包含以下五部分内容:,数据项,数据结构,数据流,数据存储,处理过程,*数据项是数据的最小组成单位*若干个数据项可以组成一个数据结构*数据字典通过对数据项和数据结构的定义来描述数据流、数据存储的逻辑内容。,2023/4/25,【例】以学生选课为例简要说明如何定义数据字典,数据项:以“学号”为例 数据项名:学号 数据项含义:唯一标识每个学生 别名:学生编号 数据类型:字符型,数据结构:以“学生”为例 数据结构名:学生 含义说明:定义了一个学生的有关信息 组成:学号、姓名
10、、性别、年龄、专业 数据流:以“选课信息”为例,数据存储:以“学生选课”为例 数据存储名:学生选课表 说明:记录学生所选课程的成绩 组成:学号、课程号、成绩,2023/4/25,二、概念结构设计,需求分析阶段描述的用户应用需求是现实世界的具体需求。将需求分析得到的用户需求抽象为信息结构即概念模型的过程就是概念结构设计。,需求分析,概念模型,认识抽象,2023/4/25,概念模型的特点,语义表达能力丰富,易于交流和理解,易于修改和扩充,易于向各种数据模型转换,E-R模型是最著名、最实用的一种是概念模型,实体,客观存在并可相互区别的事物称为实体。实体可以是具体的人、事、物,也可以是抽象的概念或联系
11、。例如,一个学生 一名教师 一门课程 一本书,属性,描述实体的特性称为属性。一个实体可以由若干个属性来刻画,例如:一个学生实体有学号、姓名、性别、出生日期、班级等方面的属性。属性的具体取值称为属性值。例如:某一个男学生实体的“性别”属性的属性值应是“男”。,实体集,同类型实体的集合称为实体集。例如,对于“学生”实体来说,全体学生就是一个实体集;对于“课程”实体来说,学校开设的所有课程也是一个实体集。,实体之间的联系,实体之间的联系是指两个不同实体集之间的联系。一共有3种类型:一对一联系(1:1)实体集A中的一个实体最多与实体集B中的一个实体相对应,反之亦然。例如:班级和班长两个实体集,一个班级
12、只有一位班长,而一个班长也只能管理一个班级。,实体之间的联系,一对多联系(1:n)对于实体集A中的一个实体,实体集B中有多个实体与之对应;反之,对于实体集B中的每一个实体,实体集A中最多只有一个实体与之对应。例如,班级和学生两个实体集,一个班级可以有多个学生,而一个学生只能属于一个班级。多对多联系(m:n)对于实体集A中的每一个实体,实体集B中有多个实体与之对应;反之,对于实体集B中的每一个实体,实体集A中也有多个实体与之对应。例如,学生和课程两个实体集,一个学生可以选修多门课程,而一门课程可以被多名学生选修。,E-R图,E-R(Entity-Relationship,实体-联系)图是描述实体
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 系统 基础教程 高级 模型
![提示](https://www.desk33.com/images/bang_tan.gif)
链接地址:https://www.desk33.com/p-354052.html