1.72k likes | 1.82k Views
第 5 章 数据库技术基础. 主要内容 5.1 数据库系统的基本概念 5.2 数据模型 5.3 关系数据库 5.4 数据库设计 5.5 SQL 简介. 知识类型:理论 二级所占分值:约 8 分 课时: 4 学时 参考书目: 《 数据库系统及应用 》 梁树军 张建伟 中国电力出版社. 在人们的周围有各种各样的数据库系统在运行。当人们买飞机票、领发工资、查资料、买卖股票时都需要与数据库打交道。 数据库系统已成为人们提高工作效率和管理水平的重要手段,已成为企业提高竞争力有力武器。
E N D
第5章 数据库技术基础 主要内容 5.1数据库系统的基本概念 5.2数据模型 5.3关系数据库 5.4数据库设计 5.5SQL简介
知识类型:理论 • 二级所占分值:约8分 • 课时:4学时 • 参考书目:《数据库系统及应用》 梁树军 张建伟 中国电力出版社
在人们的周围有各种各样的数据库系统在运行。当人们买飞机票、领发工资、查资料、买卖股票时都需要与数据库打交道。在人们的周围有各种各样的数据库系统在运行。当人们买飞机票、领发工资、查资料、买卖股票时都需要与数据库打交道。 • 数据库系统已成为人们提高工作效率和管理水平的重要手段,已成为企业提高竞争力有力武器。 • 那么,什么是数据库系统?它是如何构成如何工作的呢?我们怎样才能成功开发出一个高性能的数据库系统呢?
走进信息时代--信息大爆炸 • 20世纪科技迅速发展。1946年第一台电子计算机诞生,之后,工作、生活、学习各方面发生了巨大的变化。 • 社会信息量急剧膨胀(企业信息,政府信息, 科研信息),信息大爆炸已成为众所皆知的事实。 • 信息已成为与材料、能源同等重要甚至更加重要的战略性资源。离开了信息人们将无所适从。 • 人们迫切需要提高效率和管理水平,加强信息处理的效率。
5.1 数据库系统的基本概念 5.1.1 数据库、数据库管理系统、数据库系统 数据(Data)与数据处理(Data Processing) : 数据的内涵相当广泛。它是指一切用于描述事物的符号记录,包括:数字、文字、图形、图像、声音、动画、视频、表格记录等。 • 数据: • 为简便起见,本课程将数据于信息不作区分。 • 数据库中的数据具有以下特征: • (1) 数据受数据类型和取值范围的约束。 • (2) 数据有“型”和“值”之分。 • (3) 数据有定性表示和定量表示之分。 • (4) 数据具有载体和多种表现形式。
5.1 数据库系统的基本概念 5.1.1 数据库、数据库管理系统、数据库系统 数据(Data)与数据处理(Data Processing) : • 数据处理:是指对数据的收集、组织、整理、加工、存 储和传播等工作。 • 电子数据处理:用电子计算机进行的数据处理称为电子数据处理(Electronic Data Processing),简称为EDP (1) 数据管理: (2) 数据加工: (3) 数据传播: 是数据处理的核心和基础.
5.1 数据库系统的基本概念 5.1.1 数据库、数据库管理系统、数据库系统 数据库(Database,DB) • 数据库是长期存储在计算机内、有组织的和可共享的数据集合。 • 数据库中数据的特点: • 数据库中数据的特点是“集成”和“共享”,即数据库中集中了各种应用的数据,进行统一的构造和存储,而使它们可被不同应用程序所使用。 • 数据库的建设规模、数据库信息量的大小和使 用频度已成为衡量一个国家信息化程度的重要标志。
5.1 数据库系统的基本概念 5.1.1 数据库、数据库管理系统、数据库系统 数据库管理系统(DBMS) • 数据库管理系统 (Database Management System,DBMS) • 是专门用于管理数据库的计算机系统软件。数据库管理系统能够为数据库提供数据的定义、建立、维护、查询和统计等操作功能,并完成对数据完整性、安全性进行控制的功能。它位于应用程序和操作系统中间,是整个数据库系统的核心。 • 常用的DBMS: 小型的数据库管理软件: 只具备数据库管理系统的一些简单功能,如 Foxpro和 Access等。 严格意义上的DBMS系统: 具备其全部功能,包括数据组织、数据操纵、数据维护、控制及保护和数据服务等。如ORACLE、PowerBuilder、SQLServer等
5.1 数据库系统的基本概念 5.1.1 数据库、数据库管理系统、数据库系统 可以把数据库看成是一个仓库,在仓库里存放着数据。把数据库管理系统看成仓库的保管员,负责数据的搬进、整理和搬出。 仓库保管员 数据库管理系统 具体地说,这个保管员要: • 检查仓库的数据是否被允许(数据的定义问题), • 如何摆放最好(数据的结构问题), • 如何更快找到用户需要的数据并提取出来(数据的操纵问题) • 数据如何不被坏人提走(数据的安全性问题) • 如何处理多个人同时来提货(并发控制问题) 当多个人同时来提货时,为了提高效率那么就可以一次拿几张单子,顺路把需要的数据都取出来. 保管员所做的事情正是数据库管理系统需要做的事情。
5.1 数据库系统的基本概念 5.1.1 数据库、数据库管理系统、数据库系统 为完成数据库管理系统的功能,数据库管理系统提供了相应的数据语言(Data Language) • 数据定义语言(DDL): Data Definition Language_DDL,该语言负责数据的模式定义与数据的物理存取构建; • 数据操纵语言(DML): Data Manipulation Langugge_DML),该语言负责数据的操纵,包括查询及增加、删除及增加、删除、修改等操作; • 数据控制语言(DCL) Data Control Language_DCL),该语言负责数据完整性、安全性的定义与检查以及并发控制、故障恢复等功能。
能被计算机存储和处理的反 数据 映客观实体信息的物理符号 记录 若干数据的集合 DB 数据库 记录的集合 数据库管理系统 为用户提供一个建立、维护和使 DBMS 用数据库的环境 5.1 数据库系统的基本概念 5.1.1 数据库、数据库管理系统、数据库系统
5.1 数据库系统的基本概念 5.1.1 数据库、数据库管理系统、数据库系统 数据库系统(DBS) • 数据库系统(Database System,DBS)是以数据库为核心的完整的运行实体。它由以下五部分组成: • 数据库(DB) • 数据库管理系统(DBMS) • 数据库管理员(Database Administrator,DBA):对数据库进行规划、设计、维护和监视等工作的人员。 • 系统硬件平台:计算机、网络等硬件配置。 • 系统软件平台:操作系统、DBS开发工具(程序设计语言) 及接口软件。
用户 用户 用户 硬件 应用程序 应用程序员 应用开发工具 DBMS OS DBA 数据库系统的要素组成 Database
数据库系统层次结构图 数据库用户 应用系统 应用开发工具软件 数据库管理系统 操作系统 硬件/数据库
DBA 完成某一功能的应用程序1 DB DBAP 1 DBMS 应用程序2 相互有关联关系的数据的集合 管理数据库的系统软件 DBAP 2 应用程序n DBAP n Computer System 数据库系统的构成结构
5.1 数据库系统的基本概念 5.1.1 数据库、数据库管理系统、数据库系统 数据库应用系统(DBAS, Database Application System) 由数据库系统、应用软件、应用界面组成。应用软件是由数据库系统所提供的数据库管理系统(软件)及数据库系统开发工具所书写而成,而应用界面大多由相关的可视化工具开发而成。
数据 数 据 库 管 理 系 统 用户1 应用程序1 应用程序2 记录 用户2 应用程序3 数 据 库 ••• ••• 用户m 应用程序n 数 据 库 系 统
5.1 数据库系统的基本概念 5.1.2 数据库系统的特点 数据管理的三个阶段 人工管理、文件系统和数据库技术等3个阶段(考点) • 1) 人工管理阶段:50年代中期 • (1)数据不保存:没有磁盘,无法保存数据 • (2)由应用程序管理数据:没有操作系统 • (3)数据不共享:即使两个不同应用涉及到相同的数 • 据,也必须各自定义,无法互相利用、互相参照。(4)数据不具有独立性:数据无法独立于程序,它是 • 程序的组成部分
5.1 数据库系统的基本概念 5.1.2 数据库系统的特点 数据管理的三个阶段 人工管理、文件系统和数据库技术等3个阶段(考点) 2)文件系统阶段(50年代后期~60年代中期) 数据仍存在 相当程度的 冗余 数据实现 共享
5.1 数据库系统的基本概念 5.1.2 数据库系统的特点 数据管理的三个阶段 人工管理、文件系统和数据库技术等3个阶段(考点) 3)数据库系统阶段(60年代后): 数据共享度高、冗余度小
物理文件1 应用程序1 数据1 文件 系统 物理文件2 应用程序2 数据2 物理文件n 应用程序n 数据n 数据库 数据库 管理系统 数据库系统阶段 人工管理阶段 文件系统阶段
5.1 数据库系统的基本概念 5.1.2 数据库系统的特点 2. 数据库系统的特点(考点) (1)数据的集成性 (2)数据的高共享性与低冗余性 在DBS中按照多个应用的需要,采用统一的数据结构方式,建立数据间的语义联系,组织全局的统一的数据结构(即数据模式), 从而构成一个内在紧密联系的数据整体。而每个应用的数据则是全局结构的一部分,称为局部结构(即视图). 数据的集成性使数据可为多个应用程序共享,数据的共享又极大地减少数据冗余( 数据冗余度小是指重复的数据少),减少不必要的存储空间,避免数据的不一致性。所谓数据的不一致性指的是同一数据出现在不同的数据文件中,被系统的不同应用程序使用而造成不同的值。
5.1 数据库系统的基本概念 5.1.2 数据库系统的特点 2. 数据库系统的特点(考点) (1)数据的集成性 (2)数据的高共享性与低冗余性 (3)数据独立性: 指程序与数据互不依赖。 物理独立性: 逻辑独立性: 物理存储结构 总体逻辑结构 数据的 与程序相互独立,其改变不需修改应用程。
5.1 数据库系统的基本概念 5.1.2 数据库系统的特点 2. 数据库系统的特点(考点) (1)数据的集成性 (2)数据的高共享性与低冗余性 (3)数据独立性 (4)数据统一管理与控制: 数据完整性检查: 数据的安全性保护: 并发控制: 数据恢复: (5)为用户提供了友好的接口
5.1 数据库系统的基本概念 5.1.3 数据库系统的三级模式结构和两级映射 1.数据库系统的三级模式 概念模式: 是数据库中全体数据的逻辑结构和特征的描述。一个数据库只有一个概念模式,它与具体硬件、软件环境无关。 外模式(用户模式): 用户所见到的数据模式,即用户数据视图。是数据库局部数据的逻辑结构和特征的描述。一个概念模式可以有若干个外模式。 内模式(物理模式): 给出了数据库的物理存储结构与物理存取方法,即数据在数据库内部的表示方式。一个数据库只有一个内模式。
三级模式图 应用 应用 应用 外模式 (用户数据库) 外模式 (用户数据库) 外模式 (用户数据库) 概念模式 (概念数据库) 内模式 (物理数据库) 数据库 数据模式是数据库系统中数据结构的一种表示形式,它具有不同的层次与结构方式。
5.1 数据库系统的基本概念 5.1.3 数据库系统的三级模式结构和两级映射 1.数据库系统的三级模式 三级模式总结 外模式: 最外层,反映用户对数据的要求。 概念模式:中层,反映设计者的全局数据逻辑要求。 内模式: 最低层,反映了数据在计算机物理结构中的实 际存储形式。 三级模式划分意义: 有利于保持数据库的数据独立性
5.1 数据库系统的基本概念 5.1.3 数据库系统的三级模式结构和两级映射 2.数据库系统的两级映射 (1)概念模式到内模式: 定义了数据的全局逻辑结构与数据的物理存储结构间的对应关系. (2)外模式到概念模式: 定义了外模式与概念模式的对应关系。每个外模式是概念模式的一个基本视图。
DBS三级模式两层映射结构图 应用A 应用B 应用C 应用D 外模式1 外模式2 外模式3 外模式/概念模式映射 概念模式 概念模式/内模式映射 内模式 数据库
5.1 数据库系统的基本概念 5.1.3 数据库系统的三级模式结构和两级映射 2.数据库系统的两级映射 两级映射一般由DBMS实现保证了数据库系统中数据的逻辑独立性和物理独立性,使用户能以逻辑方式方便地访问数据库中的数据,而不必关心数据在计算机中的具体表示方式与存储方式。
5.1 数据库系统的基本概念补充习题 (1)数据库系统的核心是______。 A. 数据模型 B. 数据库管理系统C. 软件工具 D. 数据库 (2)下列叙述中正确的是______。 A. 数据库是一个独立的系统,不需要操作系统的支持B. 数据库设计是指设计数据库管理系统C. 数据库技术的根本目标是要解决数据共享的问题D. 数据库系统中,数据的物理结构必须与逻辑结构一致 (3)下列模式中,能够给出数据库物理存储结构与物理存取方法的是______。 A. 内模式 B. 外模式 C. 概念模式 D. 逻辑模式 (4)下述关于数据库系统的叙述中正确的是______。 A. 数据库系统减少了数据冗余B. 数据库系统避免了一切冗余C. 数据库系统中数据的一致性是指数据类型的一致D. 数据库系统比文件系统能管理更多的数据
5.1 数据库系统的基本概念补充习题 (5)在数据管理技术的发展过程中,经历了人工管理阶段、 文件系统阶段和数据库系统阶段。其中数据独立性最高 的阶段是______。 A. 数据库系统 B. 文件系统 C. 人工管理 D. 数据项管理 (6)下列有关数据库的描述,正确的是______。 A. 数据库是一个DBF文件 B. 数据库是一个关系 C. 数据库是一个结构化的数据集合 D. 数据库是一组文件 (7)单个用户使用的数据视图的描述称为______。 A. 外模式 B. 概念模 C. 内模式 D. 存储模式
5.1 数据库系统的基本概念补充习题 (8) 数据独立性是数据库技术的重要特点之一,所谓数据独立性是指___。(05.4)A.数据与程序独立存放 B.不同的数据被存放在不同的文件中 C.不同的数据只能被对应的应用程序所使 D.以上三种说法都不对 (9) 下述说法中没有体现数据库系统特点是_____。 A. 数据面向应用程序 B. 数据结构化C. 数据冗余小 D. 数据共享性高 (10) 数据库系统的三级模式分别为______模式、内部级模式与外部级模式。 (11) 数据的物理结构(包括存储结构、存取方式等)的改变都不影响数据库的逻辑结构,从而不致于引起应用程序的变化,这是指数据的————。
5.2 概念模型与数据模型 5.2.1 模型 • 利用模型对事物进行描述是人们在认识改造世界过程中广泛采用的一种方法,如汽车、飞机模型等。 • 模型:是对客观世界中复杂对象的描述。 例如,在军事上使用沙盘描述战场实况;在建筑上用外貌图、平面图和侧面图描述一个建筑物的外部特征和内部结构。
5.2 概念模型与数据模型 5.2.1 模型 • 模型可更形象直观揭示事物的本质特征,使人们对事物有一个更全面深入的认识,从而帮助人们更好地解决问题。 • 是否在进行数据库系统设计时也可以利用模型来帮助我们完成工作呢?如果可以,我们利用何种模型呢? • 如同在建筑设计和施工的不同阶段需要不同的图纸一样,在实施数据库应用中也需要使用不同的数据模型。
5.2 概念模型与数据模型 5.2 概念模型与数据模型 5.2.1 模型 • 模型的分类: • 概念模型(信息模型) • 逻辑模型(数据模型) • 物理模型 物理模型是对数据最低层的抽象,它描述数据在磁盘或磁带上的存储方式和存取方法。 • 从概念模型到逻辑模型的转换是由数据库设计人员完成的,从逻辑模型到物理模型的转换是由DBMS完成的,一般人员只需要了解逻辑模型就行了。
5.2 概念模型与数据模型 5.2 概念模型与数据模型 5.2.1 模型 • 为了能把现实世界的具体事物抽象组织为某一个DBMS支持的数据模型,首先需要对这一管理活动所涉及到的各种资料数据及其关系有一个全面的清晰的认识,并通过采用概念模型来描述。 • 概念模型是现实世界到机器世界的中间层次。
5.2 概念模型与数据模型 5.2 概念模型与数据模型 5.2.1 模型 • 模型分两个不同的层次。第一种是概念模型,也称信息模型,是按用户的观点对数据和信息建模。另一种是数据模型。 • 数据模型应满足三方面的要求:一是能比较真实地模拟现实世界;二是容易为人所理解;三是便于在计算机上实现。 • 数据模型是数据库系统的核心和基础。 • 各种DBMS软件都是基于某种数据模型。
5.2 概念模型与数据模型 5.2 概念模型与数据模型 5.2.1 模型 • 任何一种数据模型一般都是严格定义的概念的集合。这些概念必须能准确是描述系统的静态特征、动态特征和完整性约束条件。 • 数据模型由数据结构、数据操作和完整性约束三个要素组成。
5.2 概念模型与数据模型 5.2 概念模型与数据模型 5.2.1 模型 • 数据模型三要素: • 数据结构 • 数据结构用于描述数据的静态特征。 • 数据结构是所研究的对象类型的集合,是刻画一个数据模型最重要的方面。 • 通常可以按数据结构的类型来命名数据模型,可分为:网状模型、层次模型、关系模型、面向对象模型。
5.2 概念模型与数据模型 5.2 概念模型与数据模型 5.2.1 模型 • 数据模型三要素: • 数据操作 • 数据操作用于描述数据的动态特征。 • 数据操作是指对数据库中各种对象(型)的实例(值)允许执行的操作的集合,包括操作及有关的操作规则,主要有检索和更新(包括插入、删除、修改)两大类操作。 • 数据模型必须准确地定义这些操作的确切含义、操作符号、操作规则(优先级)以及实现操作的语言。
5.2 概念模型与数据模型 5.2 概念模型与数据模型 5.2.1 模型 • 数据模型三要素: • 数据的约束条件 • 数据的约束条件是一组完整性规则的集合。完整性规则是给定的数据模型中数据及其联系所具有的制约和储存规则,用以限定符合数据模型的数据库状态以及状态的变化,以保证数据的正确、有效和相容。如:年龄小于38,学生不及格课程少于3门。
5.2 概念模型与数据模型 5.2.1 模型 • 数据(逻辑)模型的分类 有层次模型、网状模型、关系模型、面向对象模型等。 1)层次模型: 层次模型的结构是树型结构。 树中的每个结点代表一种记录类型,这些结点满足如下规律:有且仅有一个结点无双亲(根结点),其它结点有且仅有一个双亲结点。 2)网状模型: 以记录型为结点的网络,反映现实世界事物间复杂的联系。一个结点可以有多个双亲结点;多个结点可以无双亲结点。
层次模型 网状模型
关系模型的结构 关系名 男 女 主码 学生人事记录表 域 属性名 关系 元组(行) 分量 属性(列) 关系模式:学生(学号、姓名、性别、年龄、籍贯)
5.2 概念模型与数据模型 5.2.2 E-R模型与E-R图 E-R模型是一种广泛使用的概念数据模型,该模型将现实世界的要求转化成实体、联系、属性等几个基本概念,并可用E-R图直观地表示出来。
5.2 概念模型与数据模型 5.2.2 E-R模型与E-R图 1.E–R模型中的有关概念 客观存在并可相互区别的事物。 一个学生、一个部门、学生的一次选课。 (1)实体(Entity) (2)属性(Attribute) 实体所具有的某一特性,一个实体可以由若干个属性值来描述。如学生实体可以由“学号、姓名、性别、出生日期”等属性的属性值(20061001, 张三,男,1988-5-6)来描述。