数据库原理与设计方法

上传人:龙*** 文档编号:54543072 上传时间:2018-09-14 格式:PPT 页数:326 大小:1.40MB
返回 下载 相关 举报
数据库原理与设计方法_第1页
第1页 / 共326页
数据库原理与设计方法_第2页
第2页 / 共326页
数据库原理与设计方法_第3页
第3页 / 共326页
数据库原理与设计方法_第4页
第4页 / 共326页
数据库原理与设计方法_第5页
第5页 / 共326页
点击查看更多>>
资源描述

《数据库原理与设计方法》由会员分享,可在线阅读,更多相关《数据库原理与设计方法(326页珍藏版)》请在金锄头文库上搜索。

1、数据库原理与设计方法,参考书:1王能斌。数据库系统。电子工业出版社。1995年。2王能斌编。数据库系统原理。电子工业出版社。2000年。3王珊 陈红。数据库系统原理教程。4美JD厄尔曼。数据库系统原理。,第一章 Introduction 1.1 Concepts1.1.1 Data、DataBase、DataBase System、DataBase Management System1. Data (李明,男,1972,江苏,计算机系,1990) 数据、信息、知识三者之间的关系: 数据的语义即为信息,信息在计算机中的存储(表示形式)即为数据。从信息中提升、推理、推导出的新的信息即为知识。 例如

2、:40(数据)40(信息)发烧(知识),2. DatabaseDB3. Database Management SystemDBMS4. database systemDBS 数据库管理员(database administrator,简称DBA)。,5. Data Model 数据模型是用来描述数据的一组概念和定义。一般来说,数据的描述包括两个方面: (1)数据的静态特性 它包括数据的基本结构、数据间的联系和数据中的约束。 (2)数据的动态特性 它指定义在数据上的操作。 如文件系统。 数据模型要面向现实世界,面向用户。,数据模型要面向实现,面向计算机。1) conceptual data m

3、odel 如ER模型、面向对象数据模型等。2) logical data model 如关系数据模型、层次模型、网状模型等。3) physical data model 概念数据模型只用于数据库的设计,逻辑数据模型和物理数据模型用于DBMS的实现。,6. Data Schema type: 型是该数据所属数据类型的说明。 value: 值是型的一个实例(instance或occurrence)。 对某一类数据的结构、联系和约束的描述是型的描述,型的描述称为数据模式(Data Schema)。在同一数据模式下,可以有很多的值,即实例。 例如,学生记录可以定义为图1-3(a)的形式,这是数据模式。

4、而图1-3(b)是其一个实例。,数据模型是描述数据的手段而数据模式是用给定数据模型对具体数据的描述。 美国国家标准协会(ANSI)的ANSIX3SPARC报告把数据模式分为三级(见图1-4)。,1) conceptual schema/logical schema2) external schema3) internal schema7. Database Instance 数据模式是相对稳定的,而实例是相对变动的。数据模式反映一个单位的各种事物的结构、属性、联系和约束,实质上是用数据模型对一个单位的模拟。而实例反映数据库的某一时刻的状态,也就是这一单位在此时的状态。,1.1.2 数据库技术的

5、产生与发展1. 人工管理阶段人工管理数据具有如下特点:1) 数据不保存。2) 数据需要由应用程序自己管理,没有相应的软件系统负责数据的管理工作。3) 数据不共享。4) 数据不具有独立性。人工管理阶段应用程序与数据之间的对应关系可用图l-3表示。,2. 文件系统阶段用文件系统管理数据具有如下特点:1) 数据可以长期保存。2) 由专门的软件即文件系统进行数据管理。3) 数据共享性差。4) 数据独立性低。,文件系统阶段应用程序与数据之间的关系如图1-4所示。,3. 数据库系统阶段 用数据库系统来管理数据具有如下特点:,1) 数据结构化 学生人事记录,图1-5,2) 数据的共享性好,冗余度低3) 数据

6、独立性高4) 数据由DBMS统一管理和控制l 数据的安全性(security)l 数据的完整性(integrity)l 并发(concurrency)控制l 数据库恢复(recovery),量大持久共享,1.1.3 数据库技术的研究领域1. 数据库管理系统软件的研制2. 数据库设计3. 数据库理论 1.2 数据库工程与应用1.2.1 数据库设计的目标与特点,图 1-10,1.2.2 数据库设计方法 新奥尔良方法:需求分析(分析用户要求)、概念设计(信息分析和定义)、逻辑设计(设计实现)和物理设计(物理数据库设计)。 SBYao:需求分析、模式构成、模式汇总、模式重构、模式分析和物理数据库设计。

7、 IRPalmer则主张把数据库设计当成一步接一步的过程,并采用一些辅助手段实现每一过程。 此外,基于ER模型的数据库设计方法,基于3NF(第三范式)的设计方法,基于抽象语法规范的设计方法等。,规范设计法在具体使用中又可以分为两类:手工设计和计算机辅助数据库设计。 ORACLE Designer 2000 1.2.3 数据库设计步骤,1. 需求分析 2. 概念结构设计 3. 逻辑结构设计,图1-11,4. 数据库物理设计 5. 数据库实施 6. 数据库运行和维护,在数据库设计过程中必须注意以下问题。 1. 数据库设计过程中要注意充分调动用户的积极性。 2. 应用环境的改变、新技术的出现等都会导

8、致应用需求的变化,因此设计人员在设计数据库时必须充分考虑到系统的可扩充性,使设计易于变动。 3. 系统的可扩充性最终都是有一定限度的。 1.2.4 Database Application,各种用户的数据视图,DBA主要职责包括: 1. 设计与定义数据库系统 2. 帮助最终用户使用数据库系统 3. 监督与控制数据库系统的使用和运行 4. 改进和重组数据库系统,调优数据库系统的性能 5. 转储与恢复数据库 6. 重构数据库,第二章 Data Model 数据模型应满足三方面要求:一是能比较真实地模拟现实世界;二是容易为人所理解;三是便于在计算机上实现。 两类:概念模型也称信息模型,数据模型包括网

9、状模型、层次模型、关系模型。 2.1 数据模型的要素2.1.1 数据结构2.1.2 数据操作2.1.3 数据的约束条件,2.2 概念模型E-R Data Model,2.2.1 Concepts E-R数据模型(Entity-Relationship Data Model) EER数据模型(Extended Entity-Relationship Data Model) 1实体(entity)、实体集(entity set) entity set与entity是型(type)与值(value)的关系(类似于前述data schema与database instance) 2属性(attribu

10、te) 值集(value set) 实体键(entity key)实体主键(entity primary key),3 联系(relationship) 基数比约束(cardinality ratio constraint) 参与约束(participation constraint):部分参与、全参与 结构约束(structural constraint) 两个实体之间的联系可以分为三类: l 一对一联系(1:1) l 一对多联系(1:m) l 多对多联系(m:n) 所有(ownership)关系弱实体(weak entity),2.2.2 E-R diagram 用E-R数据模型对某一单位

11、进行模拟,可以得到ER数据模式,ER数据模式可以ER图来直观地表示。 entity: weak entity: relationship: attribute: 示例:,说明:,1学位类型:硕士/博士 2导师类型:主要指导老师、协助指导 3研究生可能换导师,换专业、方向 4选课性质:学位课/非学位课 5任课类型:主讲/辅讲 6可担任描述有哪些老师可以上哪些课 7任课是指目前该课程的任课老师 8开课学期:春/秋季 9上课地点:目前该课程的上课教室,问题: 1课性质属性为什么不属于课程实体,而属于选课联系? 2专业、方向可不可以属于研究生? 2.2.3 EER data model 1特殊化(sp

12、ecialization)和普遍化(generalization) 全特殊化(total specialization)/部分特殊化(partial specialization) 不相交特殊化(disjoint specialization)/重叠特殊化(overlapping specialization),2 聚集(aggregation) 3 范畴(category),2.3 Hierarchy Data Model2.3.1 层次数据模型的数据结构1层次模型的基本结构,图 TS数据模式,图 TS数据模式的一个值,2多对多联系在层次模型中的表示 2.3.2 层次数据模型的操纵与完整性约

13、束 2.3.3 层次数据模型的存储结构 2.3.4 层次数据模型的优缺点 层次数据模型的优点主要有: l 层次数据模型本身比较简单,只需很少几条命令就能操纵数据库,比较容易使用。 l 对于实体间联系是固定的,且预先定义好的应用系统,采用层次模型来实现,其性能优于关系模型,不次于网状模型。 l 层次数据模型提供了良好的完整性支持。,层次数据模型的缺点主要有: l 现实世界中很多联系是非层次性的,如多对多联系、一个结点具有多个双亲等,层次模型表示这类联系的方法很笨拙,只能通过引入冗余数据(易产生不一致性)或创建非自然的数据组织(引入虚拟结点)来解决。 l 对插入和删除操作的限制比较多。 l 查询子

14、女结点必须通过双亲结点。 l 由于结构严密,层次命令趋于程序化。 2.4 网状数据模型2.4.1 网状数据模型的数据结构,2.4.2 网状数据模型的操纵与完整性约束 2.4.3 网状数据模型的存储结构 2.4.4 网状数据模型的优缺点,网状数据模型的优点主要有: l 能够更为直接地描述现实世界,如一个结点可以有多个双亲、允许结点之间为多对多的联系等。 l 具有良好的性能,存取效率较高。 网状数据模型的缺点主要有: l 其DDL语言极其复杂。 l 数据独立性较差。由于实体问的联系本质上是通过存取路径指示的,因此应用程序在访问数据时要指定存取路径。,2.5 Relation Data Model2

15、.5.1 Concepts1. Attribute and Domain Domain: 第一范式1NF(first nomal form) atomic data 非第一范式(Non-First Nomal Form)NF2 空值:NULL2. relation and tuple 设有一命名为R的关系,它有属性A1、A2、An,其对应的城分别为Dl、D2、Dn则关系R可表示为:,R(D1/Al,D2/A2,Dn/An) 或 R(A1,A2,An) 或 R(A1A2An) R.A1表示关系R的属性A1。 degree(arity):n R的值:r r(R) r=t1,t2,tm t=, viDi,1in 笛卡尔乘积,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号