《《数据库原理及应用》教案(共25页).doc》由会员分享,可在线阅读,更多相关《《数据库原理及应用》教案(共25页).doc(25页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上数据库原理及应用教案新乡学院计算机与信息工程学院 第1章 数据库技术概论l 教学目的:本章概述了数据库管理的进展、数据模型和数据库系统构成的一般概念,说明什么是数据库设计以及为什么要发展数据库技术,使学生对数据库系统有一个初步的认识。l 教学重点: 1、 数据管理的三个阶段及特点。2、 三种主要模型的概念。3、 E-R图。4、 DBS体系结构。l 教学难点:E-R图1.1 数据库系统概论l 教学目的:从已有的知识对学生进行启发,认识到DB的重要性以及本课程的任务和目的。l 教学重点:1、数据管理种计算机化的三个阶段。2、三个阶段的特点。l 教学难点:数据库系统阶段的特
2、点。l 教学内容:1.1.1 引言1. 计算机的应用领域:数值计算数据处理 80%以上实时控制人工智能辅助设计2. 数据处理指对各种形式的数据进行收集、存储、加工和传播等一系列活动的总和。目的:是从大量、原始的数据中抽取、推导出对人们有价值的信息作为行为决策的依据。方式:借助于计算机科学的保存和管理复杂的大量数据,以便能方便地利用信息资源。3. 出现(存在)的问题:(1)大量的数据如何存放。(存储)(2)大量的数据如何组织。(结构)(3)大量的数据如何分类、查找、统计。(处理)(4)大量的数据如何有效使用。(共享、保护) (5)大量的数据如何维护。(维护)正是这些问题的存在,迫使人们去形成一套
3、数据处理的理论、方法、技术。-数据库技术。4. 基本概念(1) 数据库技术-是研究数据库结构、存储、设计、管理和使用的一门软件学科。(2) 数据库(Data Base)-是长期存储在计算机内有组织的、大量的、共享的数据集合,具有最小的冗余和较高的数据独立性,并为各种用户共享。(3) 数据库管理系统(Data Base Management System)-位于用户和OS之间的一层数据管理软件,包括DB的建立、查询、更新。(4) 数据库系统(Data Base System)-实现有组织地、动态地存储大量关联数据,方便用户访问的计算机软、硬件和数据资源组成的系统。1.1.2 数据管理的进展数据处
4、理的中心问题是数据管理数据的分类数据的组织数据的编码数据管理包括 数据的存储数据的检索数据的维护依据其使用: 技术的不同、设备的不同,数据管理(处理)可分为: 人工式:人工处理数据阶段1800年以前,算盘, 笔记手工数据处理 机械辅助式:机械辅助阶段18001890 手摇电动计算机 机械数据处理 机电阶段 18901946年 穿空机、验空机、分类机、卡片机、制表机电子数据处理 电子阶段 1946年后本书所讲的是电子数据处理发展经过的三个阶段: 人工管理 电子数据处理 文件系统DBS1. 人工管理阶段 (1)背景 50年代中期前,用于科学计算软件:汇编语言 没有OS硬件:磁带、卡片等顺序存储设备
5、数据处理方式:批处理 (2)特点 数据不保存,用完即撤走。(用于科学计算) 没有专门的数据管理软件(文件与记录的描述安置在每一个应用程序中,程序员不仅要规定数据的逻辑结构,而且还要在程序中设计物理结构,实质上,也并无逻辑、物理结构之分,数据和程序是一体的。) 数据不共享。(数据是面向应用的。一组数据对应一个程序) 无控冗余,不一致数据。(存储浪费空间,同一数据有可能出现不一致性) 数据缺乏独立性。(程序和数据的任何一方改动,都会引起程序的修改)应用程序1数据组1应用程序2数据组2应用程序n数据组n2. 文件系统阶段 (1)背景 50-60年代 计算机不仅用于科学计算,开始处理数据软件:高级语言
6、,OS,文件系统硬件:磁盘、磁鼓等直接存储设备数据处理方式:批处理,联机实时处理 (2)特点 数据以文件的形式长期保存。 由文件系统管理数据,数据与应用程序之间有了一定的独立性。 数据冗余度较大,共享性差。应用程序1文件1应用程序2文件2应用程序n文件n文件系统 3. 数据库系阶段 (1)背景 60年代后期 数据量的管理越来越大,共享性的要求高。软件:软件价格上升,编制和维护软件的成本增加,“软件危机”硬件:大容量的磁盘,且价格下降。数据处理方式:批处理,联机实时处理,分布处理。(2) 进入DBS的三大标志1968年 IBM公司的 IMS1969年 美国 CODASYL(conference
7、on data system language)下的DBTG报告1970年 IBM公司 E. F. Codd的关系模型 (3) 特点 数据结构化。(采用复杂的数据模型表示数据结构,数据模型不仅描述数据,还要描述结构,如:学号,C 8 主键) 数据的共享性高,冗余度小,易扩充。数据的最小存储单位是数据项,可以在各种范围上对数据进行操作。(数据不再面向某个应用,而是面向整个系统,因此可以文多个用户、应用共享使用。DB中,并非不要冗余,如:合法检查,为提高效率数据有多个副本,但冗余是受控的,系统预定的。可以在数据项、记录、文件级别) 有较高的数据独立性。DBS提供了两级映像。局部逻辑结构 逻辑独立性
8、全局逻辑结构 物理独立性存储结构 数据由DBMS的统一管理和控制。在实际应用中,还要考虑(当DB中的数据有一个、多个用户共享时) 数据的安全控制 (例:口令,权限) 数据的完整性(正确,相容,有效 例:性别男女,年龄0150) 并发控制 (加锁) 恢复 (日志,设检查点) 应用程序1 文件1 文件2 文件nabcdefghDBMS应用程序2应用程序n agh adb abcdef DB 1.1.3高级数据库技术阶段 分布式DBS 80年代后 并行DBS 面向对象DBS1. 分布式DBS的特点 分布性。(多数处理就地完成) 逻辑整体性。(各地的计算机由数据通信网络相联系)2并行DBS的特点 并行
9、处理。 各节点是完全非独立。 通过高速网连接。3面向对象DBS的特点 面向对象的数据模型能完整地描述现实世界的数据结构,能表达数据间的嵌套、递归关系。 具有面向对象技术的封装性和继承性,提高了软件的可重用性。作业:见课后习题 1、 5 1.2 数据模型l 教学目的:使学生掌握数据模型满足的三要素,掌握E-R图;层次模型、网状模型、关系模型的数据结构、数据操纵、存储结构以及约束条件等。l 教学重点: 1、数据模型的三要素。2、E-R图3、层次、网状、关系模型l 教学难点:E-R图中联系的判断及表达。l 教学内容:DBS不仅要反映数据本身,还要反映数据间的联系(结构化),如何抽象表示和处理现实世界
10、中的数据和信息呢?人们认识世界的过程:现实世界 概念模型(例:桌子 table)信息世界 层次 数据模型 网状计算机世界 关系有广义的数据模型和狭义的数据模型。数据模型(Data Model):是DBS中用于提供信息表示和操作手段的形式框架。(广义) 概念模型数据模型 数据模型1.2.1 数据模型的三要素数据结构数据操作完整性约束条件1、数据结构描述系统的静态特征。数据结构是所研究的对象类型(object type)的集合。 与数据类型、内容有关的对象。如:数据项名、类型对象类型 与数据间联系有关的对象。 例:主键、系型在DBS中按数据结构的类型来命名数据模型分:层次结构 层次模型 网状结构
11、的模型称为 网状模型 关系结构 关系模型2、数据操作描述系统的动态特性。对DB中各种对象(型)和实例(值)允许执行的操作的集合,要定义这些操作确切含义、操作符号、操作规则以及实现这些操作的语言等数据操作 检索 更新 :增、删、改3、数据的约束条件是一种完整性规则的集合,保证数据的正确、有效。如:性别(男,女)1.2.2 概念模型1信息世界中的基本概念实体(Entity):客观存在并可相互区分的事物或联系。例:一桌、一学生、学生选课属性(Attribute):实体所具有的某一特征。例:学生属性由学号、姓名、年龄、码(key):唯一标出实体的属性集。例:学生(学号,性别,年龄)。选课(学号、课号、
12、分数)。域(Domain):属性的取值范围。例:性别(男、女),成绩(0100)实体型(Entity type):具有相同属性的实体必须具有共同的特征和性质。用实体名和属性名来抽象刻画同类实体称为实体型例:学生(学号、姓名、年龄、系、性别)实体集(Entity set):同型实体的集合。例:全体学生联系(Relationship)实体内的联系:例:属性间的联系 学号姓名学号性别实体间的联系:例:学生和课程本节讨论实体间的联系(1:1,1:m, m:n) 1对1联系(1:1)E1、E2两实体集。E1中的任一实体在E2中至多有一个与之对应,反之亦然。例:工厂1 1厂长班长1 1班级实体名1联系名实
13、体名2实体名1联系名实体名2实体名1联系名实体名2 1 1 M 1 M N 一对多联系(1:M) E1、E2两实体集,E1中的任一实体在E2中有N个实体(N0)与之相对应。反之,E2中的实体在E1中至多有一个与之对应,则E1与E2间为1:M。例:系1m教师班1n学生 多对多的联系(M:N)E1、E2两实体集,E1中的任一实体在E2中有N0个与之对应,反之亦然,则E1、E2为M:N。例:学生MN课程一般的:两个以上的实体型间也存在1:1,1:M,M:N的关系若实体集E1,E2E存在联系,E和E(E1,E2,Ei+1,En)。给出多个实体联系的定义。1对1联系(1:1:1 :1)E1、E2EN N
14、实体集。E1中的任一实体在E2EN中至多有一个与之对应,E2中的任一实体在E1、E3 EN中至多有一个与之对应,.则E1、E2EN N实体集间是1:1:1:.1。同学们注意:多个实体间可以同时有1:1,1:M,M:N的联系存在,不一定都是1:1:,或1:M。例:课程教师参考书讲授 1 M N供应商项目零件供应 P = M N职工领导零件组成 1 M M N2 概念模型的表示方法是现实世界和信息世界的第一级抽象应简单、方便、准确。1976年PPSchen提出(Entity-Relationship Approach)实体联系方法。简称E-R模型。有如下规定:实体名实体型:用矩形 属性名属性:用椭
15、圆 联系名联系:用菱形 学生选修课程姓名学号成绩课程名学分 M N例:一个仓库可以存放多种零件,一种零件可存放在多个仓库。一个仓库有许多职工,一个职工只在一仓库工作,职工间有领导和被领导关系。供应商可以为多个项目提供多种零件。每个项目可以使用多个供应商的零件,每种零件有由不同的提供商提供不同的项目。仓库零件职工供应商项目工作领导供应存放 M N 1 P M M N 1 ME-R图的方法与具体的DBMS支持的数据模型相独立,是各种数据模型的基础,可以转化为任一数据模型。作业:课后习题 7、11、12、13常用的数据模型三大经典数据模型 层次 非关系模型 网状 关系面向对象数据模型基本层次联系两记
16、录型(非关系模型中)及他们之间1:M(含1:1)的联系,称为基本层次联系。在非关系模型中,数据结构的单位是基本层次联系双亲Ri LijRj (对于M:N,它转化多个1:M)子女三大经典模型的特点面向计算机,能有效的存储和处理数据。而概念模型是面向用户是语义模型。1.2.4 层次模型是DBMS中最早出现的数据模型。1968年IBM推出的IBM是最早的RDBMS。用树型结构来表示各类实体及实体间的联系。1数据结构满足以下两个条件的基本层次联系的集合为层次模型。有且只有一个结点无父结点,称之为根结点。根结点以外其他结点有且只有一个父结点。每个结点表示一个记录类型(实体)记录间的联系用有向线(1:M)
17、仅表示1:M。R1R2R3R4R5层次模型是一棵倒置的树。层次模型中双亲结点是唯一的,只要指出他的父结点就可以表示层次模型结构。系学生教研室教师2、M:N在层次模型中的表示及其他课程学生学生(1) 冗余结点特点: + 学生课程 M 结构清晰、浪费空间选修 N课程学生虚拟结点特点:课程 + 用指引元代替冗余结点学生课程(2)树中实体间的联系是单向的父结点指向子结点,对于父子间存在多于一种以上的联系,影响了这种情况的建模工人工人工人 使 维 使 维 用 修 用 修设备设备设备(3)对于非树的网状结构 冗余接点3数据操纵与完整性约束条件数据操纵 查询 增、删、改增:要有双亲删:双亲删、子女则无改:保
18、证一致性4、存储结构不仅存储数据内容,还要存数据之间的层次联系。邻接法按照层次树前序穿越的顺序把所有记录依次邻接存放。(自顶向下,自左向右)层次序列顺序A A1 B B1 B2 B3 C C1 C2 C3 C4 C5 C6 C7 C8A1B1C1C2C3 B2C4C5 B3C6C7C8 A2链接法用指引元来反映数据间的层次联系。子女兄弟指引元每个记录设两个指引元,一个指向最大(最左)子女,一个指向最邻近的兄弟A1B3 *B2B1A1C1C2C3 * * *C4C5 *C6C7C8 * 层次序列链接法A2A1 A1B3B1B2 C3C8C7 C5 C2C6C4C1C C1 5、层次摸型的优缺点优
19、: 简单 对于一些树状结构的系统,其性能较好且联系固定。 提供了良好的完整性支撑。 记录间的联系通过指计来实现,查询效率高。缺: 对于M:N或网状结构表示方法方法笨拙。 增、删、改的限制多。 查询必须通过双方。 结构严密、层次命令趋于程序化、编写复杂。1.2.5 网状模型1969、1971 CODASYL 下属 DBTG发布了一系列的报告。1数据结构满足以下两个条件的基本层次联系的集合称为网状模型。 允许有一个以上的父结点。 其他结点可以有多于一个的双亲结点。2网状模型对M:N表示学生选修课程学生课程选修 M N3数据操纵与完整性约束 支持记录码的概念。 保证联系是1:M。 可以支持双亲子女的
20、某些约束。子女要在双亲具在时才能插入 双亲之一删,则子女删4、存储结构链接法以系值为单位系型:一个1:m为一个系型,有首记录型属记录型。系值:一个首记录值和其所属的所有属记录值。单相环状链首记录值属1 属4 属3属2 next指针双向环状next owner指针首记录值属1 属4 属3属2 单向环转向首链首记录值属1 属4 属3属2 next prior指针双向环转向首链首记录值属1 属4 属3属2 nextowner prior指针例:单向环状链P29(萨师煊) 学生选课的网状模型数据库学生课程选修链式法:指针的增加加快了存取速度,减少了故障影响。但它动态保持和维护这种复杂结构,势必会影响系
21、统的复杂度,耗用大量的存储空间。指针阵列法所有指向属记录的指针嵌入系首记录中,形成一个排了序的指针。查找时无须走链。首记录属2属15网状模型的优缺点优:更直接描述客观世界。性能良好,存储效率高。缺:结构复杂。其DDL、DML语言复杂不易使用。作业:课后习题 15(选做)、17 1.2.6 关系模型是目前最重要的一种数据模型。1数据结构是建立在严格的数学(集合论)之上的用二维表数据(集合论中的关系)来表示实体及实体间联系的模型关系模型术语关系二维表元组一行属性一列主码唯一确定一元组的属性组域属性的取值范围分量元组中的属性值关系模式:对关系的描述 学生(学号、姓名、年龄、性别、系)关系模型的特点概
22、念单一关系必须是规范化的2数据操纵和完整性约束查询、增、删、改操作对象和记录都是关系,且存取路径透明、向用户隐藏。实体完整性参照完整性 后面讲用户自定义完整性3存储结构二维表以文件形式存储,一个表对应一个 OS文件 自己建立一个文件结构4关系模型的优缺点优:建立在严格的数学概念上概念单一存取路径透明,从而提高了数据的独立性和安全保密性缺:查询效率不高,须对查询进行优化1.2.7 面向对象数据模型目前OO模型还没有唯一的严格定义基本思想:将数据及操作这些数据的程序代码封装在一个对象里,相似结构的对象形成一个类。一组类按E-R模型中的ISA概念形成超类、子类关系。 选修学生选修课程 超类 M 课程
23、学生 N 1.3数据库系统结构l 教学目的:使学生对DBS的模式结构(内部)有一个整体认识,了解DBS框架。l 教学重点:DBS体系结构。l 教学难点:二级映象l 教学内容:从DBS内部的系统结构出发,分析DBS的体系结构集中式DBS的用户角度 分布式 (计算机系统) client-server(客户机/服务器) (自学) 并行结构 1.3.1 DBS的三级模式二级映象结构应用程序ABCD外模式1外模式2外模式3模式内模式DB DBMSOSD 外模式/模式映像内模式/模式映像 DBS的体系结构1模式(Schema)(逻辑模式,概念模式)是DB中全部数据的一个总体逻辑和特征的描述。以某一种数据模
24、型为基础,不仅定义数据的逻辑结构,还定义与数据相关的安全性、完整性。不仅要定义数据记录内部的结构,而且还定义这些数据间的联系。仅涉及型的描述,不涉及值的描述。 静态 动态(不同时刻值不同)DBS提供了SDDL(Schema Data Description Language)2、外模式(External Schema)也称子模式(subschema)、用户模式。是数据库用户用到的那部分数据的描述。是局部数据的逻辑结构和特征的描述。与某一应用有关。外模是模式的子集。不同的用户的外模的描述是不同的。如:可以定义一个新的视图。 年龄 是2004年 - 出生日期 视图中的字段 模式中的字段DBS提供了
25、SSDDL(Subschema)3、内模式(internal schema)也称存储模式,一个DB只有一个内模,是数据物理结构和存储方式的描述。如:顺序结构,B树结构。它按什么方式组织,数据是否压缩、加密等。DBS提供DSDL(data storage description language)。4、模式/内模映象DB中只有一个模式,一个内模,故其映象是唯一。定义了全局逻辑结构与存储结构之间的对应关系,该映象包含在模式中。是物理独立性。5 外模/模式映象一个模式可以有多个外模式,对每一个外模都有一个外模/模式映象,映象包含在外模中。是逻辑独立性。总之: 模式是核心。内模、外模都依赖于模式。1.4数据库系统的组成1、 硬件平台及数据库2、 软件3、 人员课后习题 自学 P42 24、251.5数据库技术的研究领域DB技术研究的三个领域:1、 DBMS的研制2、 DBS的设计(应用程序的开发)3、 DB理论 关系规范化,关系数据理论,DB逻辑演绎、知识推理。DB中的理论发现,并行算法作业:课后习题 19、 20、 22第1章作业讲评。专心-专注-专业
限制150内