1 / 142

第 1 章 数据库及其发展

数据库原理. 第 1 章 数据库及其发展. 1.1 信息、数据与数据处理 1.2 数据处理技术的发展 1.3 数据管理技术的发展 1.4 数据库系统的特点和组成 1.5 数据库管理系统的组成、功能 1.6 数据库体系结构. 1.1 信息、数据与数据处理. 数据 : 一切数字、文字、符号、图像、声音等在计算机中的多种媒体表示形式。 数据的概念实质 包括 : 数据内容和数据形式。 数据内容 : 指所描述客观事物的具体特性,也就是通常所说的数据的“值” 数据形式 : 指数据内容存储在媒体上的具体形式,也就是通常所说的数据的“类型”。

les
Download Presentation

第 1 章 数据库及其发展

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 数据库原理 第1章数据库及其发展 1.1 信息、数据与数据处理 1.2 数据处理技术的发展 1.3 数据管理技术的发展 1.4 数据库系统的特点和组成 1.5 数据库管理系统的组成、功能 1.6 数据库体系结构

  2. 1.1 信息、数据与数据处理 • 数据:一切数字、文字、符号、图像、声音等在计算机中的多种媒体表示形式。 • 数据的概念实质包括:数据内容和数据形式。 • 数据内容:指所描述客观事物的具体特性,也就是通常所说的数据的“值” • 数据形式:指数据内容存储在媒体上的具体形式,也就是通常所说的数据的“类型”。 • 数据处理:对数据的加工、存储、管理等以产生信息的过程。 • 焦点是如何把数据管理好 • 信息:指数据经过加工处理后所获取的有用的知识。

  3. 1.1 信息、数据与数据处理(续) • 数据和信息的关系: • 数据和信息是两个相互联系、但又相互区别的概念 • 数据是信息的具体表现形式,是承载信息的物理符号(载体) • 信息是数据的内涵,是数据有意义的表现,可以有不同的数据表示方式。

  4. 1.2 数据处理技术的发展 • 数据处理的内容主要包括:数据的收集、整理、存储、加工、分类、维护、排序、检索和传输等一系列活动的总和。 • 数据处理的目的是从大量的数据中,根据数据自身的规律和及其相互联系,通过分析、归纳、推理等科学方法,利用各种处理技术手段,提取有效的信息资源。 • 手工处理 • 机械处理 • 电子处理

  5. 1.3 数据管理技术的发展 • 一.人工管理阶段(无OS,无DBS) • 20世纪50年代初,开始将计算机应用于数据管理。这一时期的数据,由用户直接管理,数据面向应用程序。 应用程序1 数据1 应用程序n 数据n 图_ 人工管理阶段程序与数据的关系 • 特点: • 1.数据依赖应用程序而存在:即数据缺乏独立性。2.数据相对分散:每组数据都是面向某一具体应用程序,数据与应用程序结合成一个整体,无法在多个程序中相互利用。3.结构极其简单:此阶段主要用于科学计算,计算处理的数据量很小,基本上不存在数据管理的问题。

  6. 1.3 数据管理技术的发展(续) • 二.文件管理阶段(有OS,有文件系统) • 20世纪50年代后期开始至60年代中期为文件管理阶段,应用程序通过专门管理数据的软件即文件管理系统来逻辑访问数据,即数据对用户是透明的。 图_ 文件系统阶段程序与数据的关系 (数据组)文件1 应用程序1 文 件 管 理 系 统 应用程序2 (数据组)文件2 应用程序n (数据组)文件n • 特点:1.应用程序通过文件管理系统按文件名访问数据,应用程序与数据间还有一定的依赖性,数据缺乏独立性2.数据相对分散:不同的应用程序具有部分相同的数据时,也必须建立各自的文件3.数据共享性差,冗余度大4.有一定的数据结构,可对文件进行修改、插入和删除操作

  7. 1.3 数据管理技术的发展(续) • 三.数据库管理阶段(出现DB技术) • 数据库管理阶段是60年代后期在文件管理基础上发展起来的 • 数据库:以一定方式组织在一起的、相互关联的、具有复杂数据结构的数据集合 应用程序1 用户1 数据库 管 理 系 统 数据库 应用程序2 用户n 应用程序n 图_ 数据库管理阶段程序与数据的关系 • 特点:1.数据结构化,体现在数据库系统整体数据的结构化 • 2.数据的共享性高,冗余度低 • 3.数据独立性高(物理独立性、逻辑独立性) • 4.完整性(正确性、合理性、一致性)

  8. 1.4 数据库系统的组成和特点 • DBS组成:DB、硬件、软件(OS、DBMS、各种应用程序)、人员(DBA、程序员、终端用户) • DBS特点: • 集中统一性 • 冗余度小 • 数据的共享性高 • 保证数据的独立性 • 保证数据的完整性 • 有利于实现数据保护

  9. DBS特点 • 一.集中统一性 • 数据间有联系、有复杂结构(如 1:n、m:n关系) 二.冗余度小 • 冗余:数据的重复浪费现象 三.数据的共享性高 1.不同应用程序对数据的高度共享 2.不同应用程序对数据在同一时刻的共享 3.不同用户对数据的共享 4.数据共享可以大大减少数据冗余、节约存储空间

  10. DBS特点(续) • 四.保证数据的独立性(后详) • 独立性:数据不依赖于应用程序而独立存在 物理独立性:数据物理结构的改变不影响全局逻辑 结构,从而不影响应用程序 逻辑独立性:数据全局逻辑结构的改变不影响应用程序 DBMS自动转换 物理独立性 逻辑独立性

  11. DBS特点(续) 五.保证数据的完整性 1.完整性:指数据的正确性、合理性、一致性(相容性) 正确性:数据应在规定的范围内描述、使用 合理性:数据应合理使用(I/O) 一致性:相同的数据在不同的应用中应具有相同的值 • 2.完整性约束 • 目的:防止数据库中存在不符合语义的数据、防止错误信息的输入输出(GIGO) (1)实体完整性约束(2)参照完整性约束(3)用户自定义完整性约束

  12. 完整性约束 • (1)实体完整性约束 • 实体中的关键字必须唯一且不能为空 字段规则表规则主/侯选索引 (2)参照完整性约束 实体R 实体S 实体R中的属性F可为非关键字或关键字的一部分,此时称属性F为实体R的外部关键字。 R中的F或者为空,或者必须对应于S中的某个数值,即指参照完整性。 .. F.. .. F#.. 关键字 • (3)用户自定义完整性约束 • 用户自己定义的诸如取值范围的约束、非关键字不为空等约束条件

  13. DBS特点(续) 完整性保护:采取约束机制保证完整性数据描述(如性别描述) 安全性保护:防止数据不合法使用造成泄密、破坏(如口令、 权限级别机制) 并发控制: 多用户同时存取数据时避免相互干扰造成错误结 果或形成死锁(如封锁协议) 故障恢复: 进行错误数据操作使完整性受到破坏,应恢复至 正确状态 • 六.有利于实现数据保护(数据控制) • 1.数据保护 • DBS中存放了大量的数据并为多用户直接共享,问题较突出

  14. 数据保护(数据控制) (续) • 2.安全性保护 • 措施:(1)使用权限鉴别(2)使用范围鉴别(3)存取控制权鉴别(4)数据加密 事务:用户定义的数据库操作序列,所有语句是一个整体,全部执行或全部不执行。(如银行转帐操作事务) • 3.并发控制 • 用正确的方式调度并发操作,避免造成数据的不一致性 (1)并发产生死锁 a.死锁:两个事务处于相互等待状态,永远不能结束 b.活锁:某个事务申请资源而出现长期等待现象(如先来先服务) (2)并发操作对数据的封锁a.共享锁(读锁):T事务释放A对象上的锁之前其它事务仅能读A不能修改A。b.排它锁(写锁): T事务释放A对象上的锁之前其它事务不能读A也不能修改A。

  15. 数据保护(数据控制) (续) • 4.故障恢复 • 数据库故障(1)事务故障:应用程序错误产生故障 (2)系统故障:除存储介质以外的系统软硬件故障 (3)介质故障:问题后果比较严重 • 主要措施(1)工作日志:将事务开始、结束以及对数据库做的一切修改操作存放至日志文件中 (2)数据备份

  16. 1.5 数据库管理系统的组成和功能 二、DBMS组成 DDL(数据描述语言)及其翻译程序 DML(数据操纵语言)及其解释、编译程序 DCL(数据控制语言) • 一、DBMS概念 • DBMS是负责数据定义、描述、建立、操纵、维护、管理、控制等功能的计算机系统软件。 • 其中数据定义、建立、维护、控制等功能主要由DBA实施

  17. DBMS组成 • 1. DDL及其翻译程序 • 指用数据描述语句来描述数据间的联系 外模式DDL对数据库用户所看到的数据结构的描述 (逻辑)模式DDL DBA对全体数据逻辑结构和特性的描述 物理(内)模式DDL DBA对数据在存储介质上的物理存储方 式的定义描述 • 模式间关系 • (1)(逻辑)模式描述的是数据的全局逻辑结构,决定了DBMS的功能;(2)外模式涉及的仅是局部逻辑结构,是模式的子集,是对模式的调用。

  18. DBMS组成(续) • 2.DML及其解释、编译程序 • 主要供用户对数据库中的数据进行查询、插入、修改、删除等操作 宿主型 不独立使用,一般作为子语言嵌入宿主语言(如c)中 自含型 可独立使用,作为独立语言交互式使用 • 3.DCL • 主要对数据进行各种控制操作 各种应用程序 DBMS等 系统运行控制程序 语言处理例行程序 DBMS的公用程序 OS 硬件

  19. DBMS功能 (1)数据库定义功能 包括外模式、模式、内模式定义, 保密定义及信息格式定义等 (2)数据库操纵功能 包括数据查询、插入、修改、         删除等 (3)数据库控制功能 包括系统控制、数据安全和 完整性控制、并发控制等 (4)数据库维护功能 包括数据库的重定义、重构和 重组织,数据库恢复、监视等 (5)数据库通信功能 系统的联机用户通过远程或 近程终端使用、操作数据库

  20. 1.6 数据库系统体系结构 一、数据库系统的三级结构 物理结构(存储结构) 面向在计算机系统中具体存储数据 的系统程序员的数据结构描述 概念结构(逻辑结构) 面向建立和维护数据库的人员的数 据结构描述 用户结构(外部结构)面向普通用户或应用程序员的数据 结构的描述 • 目的:提高数据库数据的物理独立性和逻辑独立性 • 美国国家标准委员会(ANSI)于1975年提出标准

  21. 1.6 数据库系统体系结构(续) • 二、数据模型 • 模型是现实世界特征的模拟和抽象,数据模型是现实 世界数据特征的抽象。 • 实现DBS中信息表示和提供操作手段的形式化工具 现实世界 →信息世界 →数据世界 物理数据模型: 反映数据存储结构和方式 逻辑数据模型:反映数据逻辑结构和特征 概念数据模型:描述现实世界中的数据,是 对现实世界的抽象和概括,用E-R模型描述 层次模型网状模型关系模型

  22. 1.6 数据库系统体系结构(续) 三、数据库的三级模式 物理模式(内模式、存储模式) 用物理数据模型对数据的存储 视图的描述概念模式(模式、中间模式) 用逻辑数据模型对一个实体的            全局视图的描述 用户模式(外模式、子模式)对用户所用到的局部视图数据 的内容描述,即局部数据的逻 辑结构和特征的描述 • 优点:(1)保持数据库数据的物理独立性和逻辑独立性●内模式/模式映射保证数据的物理独立性●模式/外模式映射保证数据的逻辑独立性(2)内模式或模式的改变仅需相应的修改映射,不必修改程序

  23. 1.6 数据库系统体系结构(续) 总结:数据按外模式的描述提供给用户,按内模式的描述存储在磁盘中,而概念模式提供了连接这两级的相对稳定的中间观点,并由于数据库数据的物理独立性和逻辑独立性而使得两级的任何一级的改变都不受另一级的影响。 例:书4-1~4-3 图__数据库系统的体系结构

  24. 数据库原理 第2章 三个世界及两种模型 2.1 三个世界理论 2.2 两种模型

  25. 2.1三个世界理论 现实世界 信息世界 数据世界 事物 实体 记录 • 人们从实现对客观事物的管理到用计算机进行数据管理经历了3个领域 • 现实世界 • 信息世界 • 数据世界

  26. 2.1三个世界理论 一、现实世界 • 现实世界指客观存在的事物及其相互联系(1:1, 1:n, m:n) • 信息世界(观念世界):指现实世界的事物在人们头脑中的反映 • 实体:客观存在并可相互区别的事物称为实体。 亦即一类具有相关特征的对象集合描述。 • 属性:指实体所具有的特性。 • 属性含型与值两方面内容; • 一个实体可以由若干个属性描述。如:学生(学号,姓名,性别,生日) • 域:属性的取值范围称为该属性的域。 • 实体集:具有相同属性的实体的集合称为实体集。 • 联系:实体内部各属性之间的联系。 实体之间的联系。 二、信息世界

  27. 2.1三个世界理论(续) • 数据项 初等数据项:组成数据的不可分割的最小单位(属性/字段) 组合数据项:由若干初等数据项组合而成。作为一个整体,组合数据项有自己的名字。如:日期可由日、月、年三个数据项组合而成 • 记录:由若干相关的数据项组成(实体/元组) • 文件:由若干记录组成(实体集/表/关系) • 主关键字:唯一标识一条记录的一个或多个字段组成 • 三、数据世界 • 数据世界:以数据形式存储着的信息世界中的信息。

  28. 2.2 两种模型 现实世界事物间联系 信息世界实体间联系 美籍华人陈平山1976年提出 数据世界记录间联系 一.实体联系模型(E-R模型) • 反映实体之间联系的模型,是将现实世界的客观对象 抽象为某种信息结构(不涉及信息在计算机系统中的表现问题) • 它是数据库设计的重要任务,即要建立概念数据库的 具体描述 • 建立实体模型时,实体要逐一命名以示区别

  29. 2.2 两种模型(续) • E-R模型 • E-R模型图三要素: (1) 实体 用矩形表示实体,矩形内标注实体名称。 (2) 属性 用椭圆表示属性,椭圆内标注属性名称;并用连线与实体连接起来。 (3) 实体间联系 用菱形表示,菱形内注明联系名称;用连线将菱形框分别与相关实体相连,并注明联系类型。

  30. 2.2 两种模型(续) 二.实体间联系分类 一元联系 实体集内部联系二元联系 两实体间联系 多元联系三个以上实体间联系 一对一联系 (1:1)一对多联系 (1:n) 多对多联系 (m:n) 三.两实体间的联系

  31. 2.2 两种模型(续) 三.两实体间的联系(续) (1)一对一联系:如果对于实体集A中的每个实体,实体集B中至多有一个(可以没有)与之相对应,反之亦然,则称实体集A与实体集B具有一对一联系,记作:1:1。

  32. 2.2 两种模型(续) 三.两实体间的联系(续) (2)一对多联系:如果对于实体集A中的每个实体,实体集B中有n个实体(n≥0)与之相对应,反过来,实体集B中的每个实体,实体集A中至多只有一个实体与之联系, 则称实体集A与实体集B具有一对多联系。记作:1:n。

  33. 2.2 两种模型(续) 三.两实体间的联系(续) (3)多对多联系:如果对于实体集A中的每个实体,实体集B中有n个实体(n≥0)与之相对应,反过来,实体集B中的每个实体,实体集A中也有m个实体(m≥0)与之联系,则称实体集A与实体集B具有多对多联系,记作:m:n。 姓名 性别 学号 成绩 课程名 学分 课程号 m:n中往往有派生属性

  34. 2.2 两种模型(续) 2.传统的数据模型 层次模型用树形结构自顶向下表示实体和实体间1:n联系 网状模型用网状图形结构表示实体和实体间的m:n联系, 网中结点之间的联系不受层次限制 关系模型用二维表格的形式来表示实体和实体间联系 四.数据模型(结构模型) • 三要素:数据逻辑结构、数据操作、数据完整性约束 • 1.现代数据模型 • 面向对象模型(略)

  35. 2.2 两种模型(续) 2.传统的数据模型(续) • (1)层次模型 • 层次模型的基本特点: • 有且仅有一个结点无父结点,称其为根结点。 • 其他结点有且只一个父结点。

  36. 2.2 两种模型(续) 2.传统的数据模型(续) • (2)网状模型 • 网状模型的基本特点: • 一个子结点可以有两个或多个父结点。 • 允许一个以上的节点无双亲。 • 在两个结点之间可以有两种或多种联系。 • 一个节点可以有到自身的回路联系。 • 网状模型的优、缺点: • 优点:能够更为直接地描述现实世界;具有良好的性能,存取效率高。 • 缺点:结构复杂,不利于扩充;不容易实现。

  37. 2.2 两种模型(续) 2.传统的数据模型(续) • (3)关系模型 • 由IBM公司的E.F.Codd于1970年首次提出 • 关系的基本概念●关系:通常将一个没有重复行、重复列的二维表看成一 个关系。●元组:二维表的每一行在关系中称为元组,又称记录。●属性:二维表的每一列在关系中称为属性。属性值则是各个元组在该属性上的取值。●关系模式:二维表的表头那一行称为关系模式。关系模式可表示为:关系模式名(属性名1,属性名2,…,属性名n)如:学生(学号,姓名,性别,出生日期,籍贯)●域:属性的取值范围称为域。

  38. 2.2 两种模型(续) 2.传统的数据模型(续) (3)关系模型(续) • 性质: ●不允许出现完全相同的元组 ●不允许出现同名的属性 ●元组顺序、属性顺序可以任意交换 • 主要优点 ●关系可以为空,即元组个数可以为0 ●数据结构单一实体或实体间的联系都用关系来表示,数据结构简单、清晰●关系规范化关系中每个属性不可再分割构成关系的基本规范。●概念简单,操作方便 例:书4-4~4-5

  39. 数据库原理 第3章 关系代数理论 3.1 传统关系运算 3.2 专门关系运算

  40. 3.1 传统关系运算 • 关系的数学定义 • 域:是一组具有相同数据类型的值集合。如:{自然数},{男,女},{0,1}等都是域。 • 基数:域中数据的个数称为域的基数。 • 域被命名后用如下方法表示:如: D1 = {白亚春,陈韬,王雪莲}表示姓名的集合,基数是3如: D2 = {计算机系,电子系}表示系别的集合,基数是2

  41. 3.1 传统关系运算(续) • 关系的数学定义(续) • 关系模式可以形式化地表示为:R(U, D, dom, F) R: 关系名。U: 组成该关系的属性名集合。D: 属性的域。dom:属性向域的映象集合。常说明为属性的类型、长度。F: 属性间数据的依赖关系集合。 • 关系模式指出了关系由哪些属性组成。 • 关系模式是静态的,而关系是动态的,是关系模式在 某一时刻的状态和内容;关系模式是型,关系是值。 • 关系的三种类型: ① 基本关系(基本表或基表):实际存在的表,它是实际存储数据的逻辑表示。 ②查询表:查询结果对应的表。 ③视图表:由基本表或其他视图导出的表,是虚表,不对应实际存储的数据。

  42. 3.1 传统关系运算(续) • 传统的集合运算指对一个或多个关系按照元组行进行分解或组合运算构成的新的关系 • 集合运算包括:并、交、差、笛卡尔积运算 • 一.并运算(∪) • 指将关系R和S的元组重新组合成无重复元组行的新的集合 • 如: R S R ∪ S

  43. 3.1 传统关系运算(续) • 二.交运算(∩) • 指将既属于关系R又属于关系S的元组组成新的集合 • 如: R S R ∩ S

  44. 3.1 传统关系运算(续) • 三.差运算(-) • 指由属于关系R但不属于关系S的元组组成的新的集合 • 如: R S R -S

  45. 3.1 传统关系运算(续) • 四.(广义)笛卡尔积运算(×) 指由含k1个元组的m目关系R与含k2个元组的n目关系S 组合成的包含k1×k2个元组的(m+n)目的新的关系(集合)。 • 元组的前m列是关系R的元组,后n列是关系S的元组。 • 如: R S R × S

  46. 3.2 专门的关系运算 注:其中F为条件表达式 • 专门的关系运算包括: 选择、投影、连接和除运算,用于数据查询服务 • 一.选择指按照给定条件从指定的关系中挑选出满足条件的元组构成新的关系。或者说,选择运算的结果是一个表的行的子集。记作: 如: R σB>=4 (R)

  47. 3.2 专门的关系运算(续) • 二.投影指从指定的关系中选取某些属性重新构成无重复行的新的关系。记作: πA(R) 注:其中A为R的若干属性列 如: R πA (R)πB,C (R)

  48. 3.2 专门的关系运算(续) 注:其中θ为条件表达式 • 三.连接指从两个关系的笛卡尔积中选取属性间满足一定条件的元组构成的新的关系。连接也称为θ连接。 记作: 如: RS

  49. 3.2 专门的关系运算(续) 记作: • 四.自然连接 指θ为“=”的连接运算。 说明: ①通过两个关系的公共属性进行相等连接;②两个关系无公共属性时,自然连接即为笛卡尔积。 如: RS

  50. 3.2 专门的关系运算(续) • 五.除 设:T=R÷S,其中R为m目关系, S为n目关系则:T计算原则将R中的属于R不属于S的m-n列按值分成若干组,检查每组对应的n列值的集合是否包含S①若包含,则取该组值作为商的一个元组 ②若不包含,则不取。 如: RSR÷S 例:书4-6~4-7

More Related