1.7k likes | 1.82k Views
第 4 章 数据库技术基础. 主要内容 4.1 数据库系统的基本概念 4.2 数据模型 4.3 关系数据库 4.4 数据库设计 4.5 SQL 简介. 知识类型:理论 二级所占分值:约 8 分 课时: 4 学时 参考书目: 《 数据库系统及应用 》 梁树军 张建伟 中国电力出版社. 4.1 数据库系统的基本概念. 4.1.1 数据库、数据库管理系统、数据库系统. 数据 : 是描述事物所使用的符号。 数据的种类 : 文字、图形、图像和声音 计算机中的数据:. 临时性数据:
E N D
第4章 数据库技术基础 主要内容 4.1数据库系统的基本概念 4.2数据模型 4.3关系数据库 4.4数据库设计 4.5SQL简介
知识类型:理论 • 二级所占分值:约8分 • 课时:4学时 • 参考书目:《数据库系统及应用》 梁树军 张建伟 中国电力出版社
4.1 数据库系统的基本概念 4.1.1 数据库、数据库管理系统、数据库系统 • 数据: 是描述事物所使用的符号。 • 数据的种类: 文字、图形、图像和声音 • 计算机中的数据: 临时性数据: 存放于计算机内存中,与程序仅有短时间的交互关系,随着程序的结束而消亡。 永久性数据: 对系统起着长期持久的作用,数据库中处理的 是持久性数据。
4.1 数据库系统的基本概念 4.1.1 数据库、数据库管理系统、数据库系统 数据(Data)与数据处理(Data Processing) : • 数据: 是描述事物所使用的符号。 • 数据的种类: 文字、图形、图像和声音 • 计算机中的数据: 临时性数据 永久性数据 • 数据的型(Type)与值(value): 数据的型给出了数据表示的类型,如整型、实型、字符型,而数据的值给出了符合给定型的值。
4.1 数据库系统的基本概念 4.1.1 数据库、数据库管理系统、数据库系统 数据(Data)与数据处理(Data Processing) : • 数据处理:是指对数据的收集、组织、整理、加工、存 储和传播等工作。 • 电子数据处理:用电子计算机进行的数据处理称为电子数据处理(Electronic Data Processing),简称为EDP (1) 数据管理: (2) 数据加工: (3) 数据传播: 是数据处理的核心和基础.
4.1 数据库系统的基本概念 4.1.1 数据库、数据库管理系统、数据库系统 数据库(Database,DB) • 数据库是长期存储在计算机内、有组织的和可共享的数据集合。 • 数据库中数据的特点: • 数据库中数据的特点是“集成”和“共享”,即数据库中集中了各种应用的数据,进行统一的构造和存储,而使它们可被不同应用程序所使用。 • 数据库的建设规模、数据库信息量的大小和使 用频度已成为衡量一个国家信息化程度的重要标志。
4.1 数据库系统的基本概念 4.1.1 数据库、数据库管理系统、数据库系统 数据库管理系统(DBMS) • 数据库管理系统 (Database Management System,DBMS) • 是专门用于管理数据库的计算机系统软件。数据库管理系统能够为数据库提供数据的定义、建立、维护、查询和统计等操作功能,并完成对数据完整性、安全性进行控制的功能。它位于应用程序和操作系统中间,是整个数据库系统的核心。 • 常用的DBMS: 小型的数据库管理软件: 只具备数据库管理系统的一些简单功能,如 Foxpro和 Access等。 严格意义上的DBMS系统: 具备其全部功能,包括数据组织、数据操纵、数据维护、控制及保护和数据服务等。如ORACLE、PowerBuilder、SQLServer等
4.1 数据库系统的基本概念 4.1.1 数据库、数据库管理系统、数据库系统 可以把数据库看成是一个仓库,在仓库里存放着数据。把数据库管理系统看成仓库的保管员,负责数据的搬进、整理和搬出。 仓库保管员 数据库管理系统 具体地说,这个保管员要: • 检查仓库的数据是否被允许(数据的定义问题), • 如何摆放最好(数据的结构问题), • 如何更快找到用户需要的数据并提取出来(数据的操纵问题) • 数据如何不被坏人提走(数据的安全性问题) • 如何处理多个人同时来提货(并发控制问题) 当多个人同时来提货时,为了提高效率那么就可以一次拿几张单子,顺路把需要的数据都取出来. 保管员所做的事情正是数据库管理系统需要做的事情。
4.1 数据库系统的基本概念 4.1.1 数据库、数据库管理系统、数据库系统 为完成数据库管理系统的功能,数据库管理系统提供了相应的数据语言(Data Language) • 数据定义语言(DDL): Data Definition Language_DDL,该语言负责数据的模式定义与数据的物理存取构建; • 数据操纵语言(DML): Data Manipulation Langugge_DML),该语言负责数据的操纵,包括查询及增加、删除及增加、删除、修改等操作; • 数据控制语言(DCL) Data Control Language_DCL),该语言负责数据完整性、安全性的定义与检查以及并发控制、故障恢复等功能。
能被计算机存储和处理的反 数据 映客观实体信息的物理符号 记录 若干数据的集合 DB 数据库 记录的集合 数据库管理系统 为用户提供一个建立、维护和使 DBMS 用数据库的环境 4.1 数据库系统的基本概念 4.1.1 数据库、数据库管理系统、数据库系统
4.1 数据库系统的基本概念 4.1.1 数据库、数据库管理系统、数据库系统 数据库系统(DBS) • 数据库系统(Database System,DBS)是以数据库为核心的完整的运行实体。它由以下五部分组成: • 数据库(DB) • 数据库管理系统(DBMS) • 数据库管理员(Database Administrator,DBA):对数据库进行规划、设计、维护和监视等工作的人员。 • 系统硬件平台:计算机、网络等硬件配置。 • 系统软件平台:操作系统、DBS开发工具(程序设计语言 及接口软件。
4.1 数据库系统的基本概念 4.1.1 数据库、数据库管理系统、数据库系统 数据库应用系统(DBAS, Database Application System) 由数据库系统、应用软件、应用界面组成。应用软件是由数据库系统所提供的数据库管理系统(软件)及数据库系统开发工具所书写而成,而应用界面大多由相关的可视化工具开发而成。
数据 数 据 库 管 理 系 统 用户1 应用程序1 应用程序2 记录 用户2 应用程序3 数 据 库 ••• ••• 用户m 应用程序n 数 据 库 系 统
4.1 数据库系统的基本概念 4.1.2 数据库系统的特点 数据管理的三个阶段 人工管理、文件系统和数据库技术等3个阶段(考点) • 1) 人工管理阶段:50年代中期 • (1)数据不保存:没有磁盘,无法保存数据 • (2)由应用程序管理数据:没有操作系统 • (3)数据不共享:即使两个不同应用涉及到相同的数 • 据,也必须各自定义,无法互相利用、互相参照。(4)数据不具有独立性:数据无法独立于程序,它是 • 程序的组成部分
4.1 数据库系统的基本概念 4.1.2 数据库系统的特点 数据管理的三个阶段 人工管理、文件系统和数据库技术等3个阶段(考点) 2)文件系统阶段(50年代后期~60年代中期) 数据仍存在 相当程度的 冗余 数据实现 共享
4.1 数据库系统的基本概念 4.1.2 数据库系统的特点 数据管理的三个阶段 人工管理、文件系统和数据库技术等3个阶段(考点) 3)数据库系统阶段(60年代后): 数据共享度高、冗余度小
4.1 数据库系统的基本概念 4.1.2 数据库系统的特点 2. 数据库系统的特点(考点) (1)数据的集成性 在DBS中按照多个应用的需要,采用统一的数据结构方式,建立数据间的语义联系,组织全局的统一的数据结构(即数据模式), 从而构成一个内在紧密联系的数据整体。而每个应用的数据则是全局结构的一部分,称为局部结构(即视图).
4.1 数据库系统的基本概念 4.1.2 数据库系统的特点 2. 数据库系统的特点(考点) (1)数据的集成性 (2)数据的高共享性与低冗余性 数据的集成性使数据可为多个应用程序共享,数据的共享又极大地减少数据冗余( 数据冗余度小是指重复的数据少),减少不必要的存储空间,避免数据的不一致性。所谓数据的不一致性指的是同一数据出现在不同的数据文件中,被系统的不同应用程序使用而造成不同的值。
4.1 数据库系统的基本概念 4.1.2 数据库系统的特点 2. 数据库系统的特点(考点) (1)数据的集成性 (2)数据的高共享性与低冗余性 (3)数据独立性: 指程序与数据互不依赖。 物理独立性: 逻辑独立性: 物理存储结构 总体逻辑结构 数据的 与程序相互独立, 其结构改变时不需修改应用程序。
4.1 数据库系统的基本概念 4.1.2 数据库系统的特点 2. 数据库系统的特点(考点) (1)数据的集成性 (2)数据的高共享性与低冗余性 (3)数据独立性 (4)数据统一管理与控制: 数据完整性检查: 数据的安全性保护: 并发控制: 数据恢复: (5)为用户提供了友好的接口
4.1 数据库系统的基本概念 4.1.3 数据库系统的三级模式结构和两级映射 1.数据库系统的三级模式 概念模式(又称模式): 是数据库中全体数据的逻辑结构和特征的描述。一个数据库只有一个概念模式,它与具体硬件、软件环境无关。 外模式(又称子模式或用户模式): 用户所见到的数据模式,即用户数据视图。是数据库局部数据的逻辑结构和特征的描述。一个概念模式可以有若干个外模式。 内模式(又称物理模式或存储模式): 给出了数据库的物理存储结构与物理存取方法,即数据在数据库内部的表示方式。一个数据库只有一个内模式。
三级模式图 应用 应用 应用 外模式 (用户数据库) 外模式 (用户数据库) 外模式 (用户数据库) 体现了数据库的用户观 概念模式 (概念数据库) 体现了数据库的总体观 内模式 (物理数据库) 体现了数据库的存储观 数据库 数据模式是数据库系统中数据结构的一种表示形式,它具有不同的层次与结构方式。
4.1 数据库系统的基本概念 4.1.3 数据库系统的三级模式结构和两级映射 1.数据库系统的三级模式 三级模式总结 外模式: 最外层,反映用户对数据的要求。 概念模式:中层,反映设计者的全局数据逻辑要求。 内模式: 最低层,反映了数据在计算机物理结构中的实 际存储形式。 三级模式划分意义: 有利于保持数据库的数据独立性
4.1 数据库系统的基本概念 4.1.3 数据库系统的三级模式结构和两级映射 2.数据库系统的两级映射 (1)概念模式到内模式: 定义了数据的全局逻辑结构与数据的物理存储结构间的对应关系. (2)外模式到概念模式: 定义了外模式与概念模式的对应关系。每个外模式是概念模式的一个基本视图。
三级模式、两种映射关系图 应用 应用 应用 外模式 (用户数据库) 外模式 (用户数据库) 外模式 (用户数据库) 外模式 ↓映射 概念模式 概念模式 (概念数据库) 内模式 (物理数据库) 概念模式 ↓映射 内模式 数据库
4.1 数据库系统的基本概念 4.1.3 数据库系统的三级模式结构和两级映射 2.数据库系统的两级映射 两级映射一般由DBMS实现保证了数据库系统中数据的逻辑独立性和物理独立性,使用户能以逻辑方式方便地访问数据库中的数据,而不必关心数据在计算机中的具体表示方式与存储方式。
4.1 数据库系统的基本概念补充习题 (1)数据库系统的核心是______。 A. 数据模型 B. 数据库管理系统C. 软件工具 D. 数据库 (2)下列叙述中正确的是______。 A. 数据库是一个独立的系统,不需要操作系统的支持B. 数据库设计是指设计数据库管理系统C. 数据库技术的根本目标是要解决数据共享的问题D. 数据库系统中,数据的物理结构必须与逻辑结构一致 (3)下列模式中,能够给出数据库物理存储结构与物理存取方法的是______。 A. 内模式 B. 外模式 C. 概念模式 D. 逻辑模式 (4)下述关于数据库系统的叙述中正确的是______。 A. 数据库系统减少了数据冗余B. 数据库系统避免了一切冗余C. 数据库系统中数据的一致性是指数据类型的一致D. 数据库系统比文件系统能管理更多的数据 BCAA
4.1 数据库系统的基本概念补充习题 (5)在数据管理技术的发展过程中,经历了人工管理阶段、 文件系统阶段和数据库系统阶段。其中数据独立性最高 的阶段是______。 A. 数据库系统 B. 文件系统 C. 人工管理 D. 数据项管理 (6)下列有关数据库的描述,正确的是______。 A. 数据库是一个DBF文件 B. 数据库是一个关系 C. 数据库是一个结构化的数据集合 D. 数据库是一组文件 (7)单个用户使用的数据视图的描述称为______。 A. 外模式 B. 概念模 C. 内模式 D. 存储模式 ACA
(8) 数据独立性是数据库技术的重要特点之一,所谓数据独立性是指___。(04.4) A.数据与程序独立存放 B.不同的数据被存放在不同的文件中 C.不同的数据只能被对应的应用程序所使 D.以上三种说法都不对 (9) 下述说法中没有体现数据库系统特点是_____。 A. 数据面向应用程序 B. 数据结构化C. 数据冗余小 D. 数据共享性高 10)数据库管理系统实现对数据库中数据查询、插入、修改和删除的功能称为( ) A)数据定义功能 B)数据查询功能 C)数据操作功能 D)数据控制功能 DAC
(11) 数据库管理系统DBMS中用来定义模式、内模式和外模式的语言为() A) C B) Basic C) DDL D) DML (12) 数据库系统体系结构的三级模式间存在两种映像,它们是()。 A) 模式与内模式间,模式与模式间 B) 子模式与模式间,模式与内模式间 C) 子模式与外模式间,模式与内模式间 D) 子模式与内模式间,外模式与内模式间 CB
4.1 数据库系统的基本概念补充习题 填空题: 1.数据库系统的三级模式分别为______模式、内部级模式与外部级模式。 2. 数据的物理结构(包括存储结构、存取方式等)的改变都不影响数据库的逻辑结构,从而不致于引起应用程序的变化,这是指数据的_____. 概念或概念级、物理独立性
4.2 数据模型 4.2.1 数据模型 数据模型及其要素 • 模型:是对客观世界中复杂对象的描述。 • 例如,在军事上使用沙盘描述战场实况;在建筑上用外貌图、平面图和侧面图描述一个建筑物的外部特征和内部结构。 • 数据模型: • 数据模型是描述数据的结构和性质、数据之间的联系以及施加在数据或数据联系上的一些限制。
4.2 数据模型 4.2.1 数据模型 数据模型及其要素 数据结构: 主要描述数据的类型、内容及数据间的联系,是对系统静态特性的描述 数据操作: 主要描述在相应数据结构上可进行的操作,是对系统动态特征的描述。 数据约束: 主要描述数据结构内数据间的语法、语义联系,他们之间的制约与依存关系,必须遵守的通用的完整性约束,是一组完整性规则的集合,从而保证数据的正确性、有效性。 数据模型要素
4.2 数据模型 4.2.1 数据模型 2. 数据模型的分类 • 如同在建筑设计和施工的不同阶段需要不同的图纸一样,在实施数据库应用中也需要使用不同的数据模型:概念模型(也称信息模型)、逻辑模型和物理模型。 • 概念模型独立于计算机系统,它完全不涉及信息在计算机系统中的表示,只是用来描述某个特定组织所关心的信息结构,是按用户的观点对数据和信息建模,是对企业主要数据对象的基本表示和概括性描述,主要用于数据库设计。
4.2 数据模型 4.2.1 4.2.1 数据模型 2. 数据模型的分类 • 逻辑模型是直接面向数据库的逻辑结构的,通常有一组严格定义的,无二义性的语法和语义的数据库语言,人们可以用这种语言来定义、操纵数据库中的数据。 • 物理模型是对数据最低层的抽象,它描述数据在磁盘或磁带上的存储方式和存取方法。 • 从概念模型到逻辑模型的转换是由数据库设计人员完成的,从逻辑模型到物理模型的转换是由DBMS完成的,一般人员只需要了解逻辑模型就行了。
4.2 数据模型 4.2.1 4.2.1 数据模型 2. 数据模型的分类 • 概念数据模型:简称概念模型,是按用户的观点对客观事物建模,该模型独立于计算机系统,与具体的数据库管理系统无关。主要用于数据库设计,较为有名的概念模型有E—R模型、面向对象模型等。 • 逻辑数据模型:又称数据模型,它是一种面向数据库系统的模型,概念模型只有在转换成数据模型后才能在数据库中得以表示。逻辑数据模型有层次模型、网状模型、关系模型、面向对象模型等。 • 物理数据模型:又称物理模型,此模型给出数据模型在计算机上物理结构的表示。 数据模型分类
4.2 数据模型 4.2.1 数据模型 3. 逻辑数据模型的分类 有层次模型、网状模型、关系模型、面向对象模型等。 1)层次模型: 层次模型的结构是树型结构。 树中的每个结点代表一种记录类型,这些结点满足如下规律:有且仅有一个结点无双亲(根结点),其它结点有且仅有一个双亲结点。 2)网状模型: 以记录型为结点的网络,反映现实世界事物间复杂的联系。一个结点可以有多个双亲结点;多个结点可以无双亲结点。
层次模型 网状模型
4.2 数据模型 4.2.2 E-R模型与E-R图 E-R模型是一种广泛使用的概念数据模型,该模型将现实世界的要求转化成实体、联系、属性等几个基本概念,并可用E-R图直观地表示出来。
4.2 数据模型 4.2.2 E-R模型与E-R图 1.E–R模型中的有关概念 客观存在并可相互区别的事物。 一个学生、一个部门、学生的一次选课。 (1)实体(Entity) (2)属性(Attribute) 实体所具有的某一特性,一个实体可以由若干个属性值来描述。如学生实体可以由“学号、姓名、性别、出生日期”等属性的属性值(20061001, 张三,男,1988-5-6)来描述。
4.2 数据模型 4.2.2 E-R模型与E-R图 1.E–R模型中的有关概念 (3)实体型(Entity Type): 具有相同属性的实体所具有的共同特征和性质。 用实体名及属性名集合来抽象。 例如, 学生(学号、姓名、性别、出生年月、系、入学时间) (4)实体集(Entity Set): 同种实体的集合。 全体学生就是一个实体集。
4.2 数据模型 4.2.2 E-R模型与E-R图 1.E–R模型中的有关概念 (5)码 码是能唯一标识实体的属性。任意两个同类的实体不可能有相同的码.如学生学号可作为学生实体的码,人的身份证号可作为人实体的码. (6)域 属性的合理取值范围。 性别属性的域为(男、女),成绩属性域为0到150
4.2 数据模型 4.2.2 E-R模型与E-R图 1.E–R模型中的有关概念 (7)联系:现实世界中事物间的联系。 实体内部的联系:指实体的各属性之间的联系。 如出生年份和年龄,总成绩和各科成绩。 “职员”实体的“岗位”属性与“工资等级”属性之间就有一定的联系(约束), 实体之间的联系:指不同实体之间的联系。 分类
4.2 数据模型 4.2.2 E-R模型与E-R图 1.E–R模型中的有关概念 (7)联系:现实世界中事物间的联系。 学校 ↓↑ 校长 三种联系: A中一个实体至多同B中的一实体相联系 B中的一个实体也至多同A中的一个实体相联系 一对一: 简记1:1 一对多: 简记1:m A中一个实体同B中多个实体相联系 B中的一个实体只可同A中一个实体相联系 班级 ↓↑ 学生 A中一个实体同B中多个实体相联系 B中的一个实体可同A中多个实体相联系 老师 ↓↑ 学生 多对多: 简记m:n
4.2 数据模型 4.2.2 E-R模型与E-R图 2. E–R模型的图示法 在E–R图中,用不同的几何图形表示E–R模型中的三个概念与两个联接关系。 三个概念:实体、属性和联系。 实体集(联系)与属性之间关系: 一个实体可有若干属性,实体及其属性构成实体完整描述。 实体(集)与联系:实体集之间不能建立直接关系,而只能通过联系才能建立起联接关系,如老师与学生是通过选课建立联系。
4.2 数据模型 4.2.2 E-R模型与E-R图 2. E–R模型的图示法 (1) 实体集:用矩形表示,矩形内写上实体集的名字。 (2) 属性: 用椭圆形表示属性,其内写上属性名称。 (3) 联系: 用菱形表示联系,其内写上联系名。 (4) 实体集(联系)与属性间的联接关系: 用无向线段表示. (5) 实体集与联系间的联接关系: 用无向线段表示,在线上标注联系类型(1:1、1:n、n:m) 。
E-R模型 学号 姓名 年龄 性别 1:1模型 学生 1 拥有 1 校园卡 卡号 学号 部门
E-R模型 学号 姓名 年龄 性别 1:n模型 学生 n 属于 1 班级 班号 班主任 班长
E-R模型 学号 姓名 年龄 性别 m:n模型 学生 n 选修 m 课程 课号 课名 学分 学时