• 数据库知识点总结


    1.1 数据管理技术的进展

    1.1.1 基本概念

    • 信息:以物理介质为载体,传递和反映世界各种事物存在方式和运动状态的表征。
    • 数据:描述现实世界的各种信息(事物)的符号记录。数据的表现形式:数字、文字、图形、图像、声音、语言等。
    • 信息和数据是两个既有联系又有区别的概念,数据是信息的载体,信息是数据的内涵。
    • 数据处理:指对各种数据进行收集、存储、加工和传播的一系列活动的总和。
    • 数据管理:指对数据进行分类、组织、编码、存储、检索和维护操作。

    1.1.2 数据管理技术的进展

    • 人工管理阶段
      • 数据不长期保存在计算机中
      • 数据是面向应用的
      • 数据与程序不具有独立性
      • 无法实现数据共享
      • 数据冗余度大
    • 文件系统阶段
      • 数据能够长期保存。
      • 由专门软件对数据进行管理
      • 数据共享性差
      • 数据冗余度大
      • 数据独立性较差
      • 可实现以文件为单位的共享
    • 数据库系统阶段
      • 数据结构化
      • 数据共享性高
      • 数据冗余度低
      • 数据易于扩充
      • 数据独立性高
      • 数据统一管理与控制

    1.2 理解数据库系统

    1.2.1 什么是数据库系统

    • 数据库:长期存储在计算机内、有组织、可共享的数据集合。
    • 数据库系统:引入数据库之后的计算机系统。
    • 数据库管理系统:专门用于管理数据库的系统软件

    1.2.1.1 数据库系统的组成

    数据库、数据库管理系统、应用开发工具、数据库管理员、数据库应用系统、用户

    1.2.1.2 数据库特点

    • 数据结构化
      • 整体数据的结构化是数据库的主要特征。
      • 数据的结构用数据模型描述,无需程序定义和解释。
    • 数据共享性
      • 降低数据的冗余度,节省存储空间
      • 避免数据间的不一致性
      • 使系统易于扩充
    • 数据独立性
      • 物理独立性:指用户的应用程序与存储在磁盘上的数据库中数据是相互独立的。当数据的物理存储改变了,应用程序不用改变。
      • 逻辑独立性:指用户的应用程序与数据库的逻辑结构是相互独立的。数据的逻辑结构改变了,用户程序也可以不变。
    • 数据库管理系统对数据的统一控制
      • 数据的安全性保护:使每个用户只能按指定方式使用和处理指定数据,保护数据以防止不合法的使用造成的数据的泄密和破坏。
      • 数据的完整性检查:将数据控制在有效的范围内,或保证数据之间满足一定的关系。
      • 并发控制:对多用户的并发操作加以控制和协调,防止相互干扰而得到错误的结果。
      • 数据库恢复:将数据库从错误状态恢复到某一已知的正确状态。

    1.3 数据库系统结构

    型:对某一类数据的结构和属性的说明
    值:是型的一个具体赋值

    1.3.1 数据库系统的三级模式结构

    三级模式结构:外模式、模式、内模式

    • 模式(也称逻辑模式):
      • 数据库中全体数据的逻辑结构和特征的描述
      • 一个数据库只有一个模式
      • 是数据库系统模式结构的中间层
      • 与数据的物理存储细节和硬件环境无关
      • 与具体的应用程序、开发工具及高级程序设计语言无关
      • 所有用户的公共数据视图,综合了所有用户的需求
      • 数据的逻辑结构(数据项名、类型、取值范围等)
      • 数据之间的联系
      • 数据有关的安全性、完整性要求
    • 外模式(也称子模式或用户模式):
      • 数据库用户(包括应用程序员和最终用户)使用的局部数据的逻辑结构和特征的描述
      • 数据库用户的数据视图,是与某一应用有关的数据的逻辑表示
      • 外模式的地位:介于模式与应用之间
      • 模式与外模式的关系:一对多
      • 外模式通常是模式的子集
      • 一个数据库可有多个外模式。反映了不同的用户的应用需求、看待数据的方式、对数据保密的要求
      • 对模式中同一数据,在外模式中的结构、类型、长度、保密级别等都可以不同
    • 内模式(也称存储模式)
      • 是数据物理结构和存储方式的描述
      • 是数据在数据库内部的表示方
      • 一个数据库只有一个内模式

    1.3.2 数据库系统的二级映像

    数据库系统的二级映像是指外模式与模式之间、模式与内模式之间的映像关系 。

    • 外模式/模式映像:
      • 定义外模式与模式之间的对应关系
      • 每个外模式都对应一个外模式/模式映象
      • 映象定义通常包含在各自外模式的描述中
      • 外模式/模式映象的用途:保证数据的逻辑独立性
      • 当模式改变时,数据库管理员修改有关的外模式/模式映象,使外模式保持不变。
      • 应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性。
    • 模式/内模式映象
      • 定义了数据全局逻辑结构与存储结构之间的对应关系。
      • 数据库中模式/内模式映象是唯一的
      • 其定义通常包含在模式描述中
      • 模式/内模式映象的用途:保证数据的物理独立性
      • 当数据库的存储结构改变了,数据库管理员修改模式/内模式映象,使模式保持不变;
      • 应用程序不受影响,保证了数据与程序的物理独立性。
    • 三级模式与二级映像结构的优点:
      • 保证数据独立性:将外模式与模式分开,保证了数据的逻辑独立性;将内模式与模式分开,保证了数据的物理独立性。
      • 有利于数据共享,减少数据冗余。
      • 有利于数据的安全性:不同的用户在各自的外模式下根据要求操作数据,只能对限定的数据进行操作。
      • 简化了用户接口:用户按照外模式编写应用程序或输入命令,而无须了解数据库全局逻辑结构和内部存储结构,方便用户使用。

    1.3.3 数据库管理系统

    数据库管理系统(DBMS)是对数据进行统一管理与控制的专门系统软件
    主要功能:

    • 数据定义功能
    • 数据操纵功能
    • 数据控制功能
    • 数据库的建立和维护功能
    • 数据组织、存储和管理

    1.3.4 数据库系统所需人员

    • 开发、管理和使用数据库系统的人员主要包括:
      • 数据库管理员
      • 系统分析员
      • 数据库设计人员
      • 应用程序员
      • 最终用户

    1.3.4.1 数据库管理员

    • 是指对数据库和DBMS进行管理的一个或一组人员,负责全面管理和控制数据库系统。
    • 其具体职责包括:
      • 参与数据库设计。
      • 数据完整性和安全性管理。
      • 数据库运行维护和性能评价。
      • 数据库改进和重构。

    1.3.4.2 系统分析员

    负责应用系统的需求分析和规格说明,要和用户及DBA协商,确定系统的软/硬件配置,并参与数据库系统的概要设计。

    1.3.4.3 数据库设计人员

    • 是数据库设计的核心人员,负责数据库中数据内容及结构的确定、数据库各级模式的设计。数据库设计人员必须参加用户需求调研和系统分析,然后进行数据库设计。
    • 通常情况下,数据库设计人员是由DBA或系统分析员担任的

    1.3.4.4 应用程序员

    负责设计和开发数据库应用程序,并负责进行调试和安装。

    1.3.4.5 最终用户

    • 偶然用户:不确定的或很少使用系统的人员
    • 简单用户:使用应用系统访问数据库的人员(如,银行的职员、机票预定人员、旅馆总台服务员等)
    • 复杂用户:直接使用数据库语言访问数据库,甚至能够基于数据库管理系统的API编制自己的应用程序(如,工程师、科学家、经济学家、科技工作者等)

    1.4 数据模型

    1.4.1 数据模型的概念

    • 模型:是对现实世界的模拟和抽象。
    • 数据模型:是现实世界中数据特征的抽象。
    • 数据模型的作用:用来抽象、表示和处理现实世界中的数据和信息。
    • 数据模型的定义:数据的组织结构称为数据模型,它决定了数据及其之间联系的表达方式。
    • 数据模型应满足三方面要求
      • “模拟逼真”:能较真实地模拟现实世界
      • “易理解”:容易为人所理解
      • “易实现”:便于在计算机上实现
    • 现实世界中的客观对象抽象为概念模型;
    • 把概念模型转换为某一DBMS支持的数据模型。

    1.4.2 概念数据模型

    • 概念数据模型事现实世界到信息世界的抽象
    • 概念模型与DBMS无关
    • 概念模型的用途
      • 用于信息世界的建模
      • 是现实世界到机器世界的一个中间层次
      • 数据库设计人员和用户之间进行交流
    • 对概念模型的基本要求:。
      • 较强的语义表达能力,能够方便、直接地表达应用中的各种语义知识
      • 简单、清晰、易于用户理解

    1.4.2.1 概念模型的表示方法

    • 实体-联系(Entity-Relationship)方法(E-R方法):用E-R图来描述现实世界的概念模型

    1.4.2.2 E-R模型的三要素

    • 实体(Entity)
      • 实体是指客观存在并可相互区别的事物。实体可以是人、事或物,也可以是抽象的概念。例如,一件商品、一个客户、一份订单等都是实体。
    • 属性(Attribute)
      • 实体通常有若干特征,每个特征称为实体的一个属性。属性刻画了实体在某方面的特性。例如,商品实体的属性可以有商品编号、商品类别、商品名称、生产商等。
    • 联系(Relationship)
      • 现实世界中事物之间的联系反映在E-R模型中就是实体间的联系。例如,订单就是客户和商品之间的联系。

    1.4.2.3 实体型和实体值

    实体型(Entity Type)是指对某一类数据结构和特征的描述。通常实体型由实体名和属性名的集合来抽象和刻画同类实体。
    例如,商品(商品编号,商品类别,商品名称,生产商,单价,库存量,保质期)是一个实体型。
    实体值(Entity Value)是实体型的内容,由描述实体的各个属性值组成。
    例如,(50020005,体育用品,足球,美好体育用品公司,120,20,2012-1-1)是实体值。

    1.4.2.4 两个实体型间联系的类型

    • 1:1 联系
      • 如果对于实体集A中的每一个实体,实体集B中至多有一个实体与之联系,反之亦然,则称实体集A与实体集B具有一对一联系。记为1:1。
      • 实例:班级与班长之间的联系(一个班级只有一个正班长,一个班长只在一个班中任职)
    • 1:n 联系
      • 如果对于实体集A中的每一个实体,实体集B中有n个实体(n≥0)与之联系;反之,对于实体集B中的每一个实体,实体集A中至多只有一个实体与之联系,则称实体集A与实体集B有一对多联系;记为1:n
      • 实例:班级与学生之间的联系(一个班级中有若干名学生,每个学生只在一个班级中学习)
    • m:n 联系
      • 如果对于实体集A中的每一个实体,实体集B中有n个实体(n≥0)与之联系,反之,对于实体集B中的每一个实体,实体集A中也有m个实体(m≥0)与之联系,则称实体集A与实体B具有多对多联系。记为m:n
      • 实例:课程与学生之间的联系(一门课程同时有若干个学生选修,一个学生可以同时选修多门课程)

    1.4.2.5 两个以上的实体型之间的联系

    两个以上的实体型内的各实体之间也可以存在一对一,一对多,多对多的联系 。

    1.4.2.6 单个实体型内的联系

    同一个实体型内的各实体之间也可以存在一对一,一对多,多对多的联系 。

    1.4.2.7 E-R模型的表示—E-R图

    • 实体型的表示
      • 矩形表示,矩形框内写明实体名。
    • 属性
      • 椭圆形表示,并用无向边将其与相应的实体连接起来。
    • 联系
      • 联系本身:用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1:1、1:n或m:n)。
      • 联系的属性:联系也可以有属性。如果一个联系具有属性,则这些属性也要用无向边与该联系连接起来。
        【例】客户订购某类商品均有数量,则实体型“客户”与实体型“商品”之间的联系就具有属性“数量”,其E-R图表示如下。

    1.4.3 逻辑数据模型

    • 是信息模型(概念模型)的数据化,从计算机角度出发,提供表示和组织数据的方法。
    • 三要素:
      • 数据结构:记录间的组织形式。静态
      • 数据操纵:建立在特定结构下的操纵实现。动态
      • 数据完整性约束:完整性约束是数据的一组完整性规则的集合,是对记录内部及记录间的限定。
    • 逻辑数据模型的分类
      • 层次模型
      • 网状模型
      • 关系模型

    1.4.4 关系模型

    • 1970年由美国IBM公司San Jose研究室的研究员E.F.Codd提出。
    • 数据结构 – 实体、联系均用二维表:关系模型中基本的数据结构是表格,关系模型使用二维表来表示实体及其联系。
    • 数据操作 – 集合操作,存取路径透明:关系数据操作具有两个显著特点:一是关系操作是集合操作,即操作的对象和结果均为集合;二是关系模型将操作中的存取路径向用户屏蔽起来,用户只要说明做什么,而不必指出怎样做。
    • 数据完整性约束:关系完整性约束规则包括三类:实体完整性、参照完整性和用户定义完整性。
    • 关系模型的特点:
      • 优点
        • 建立在严格的数学概念的基础上
        • 概念单一
        • 存取路径对用户透明
      • 缺点
        • 查询效率往往不如非关系数据模型
        • 增加了开发DBMS的难度

    1.5 数据库系统的发展

    1.5.1 数据库系统的发展阶段

    • 第一代数据库系统

      • 20世纪70年代,层次和网状数据库系统
      • 代表:层次模型数据库系统的典型代表是IBM公司的IMS;网状模型的规范是DBTG,实际系统有:HP公司的IMAGE、Honeywell公司的IDS/2等。
    • 第二代数据库系统

      • 20世纪70年代后期以后,关系数据库系统
      • 代表:Oracle、SQL Server、Sybase、DB2、Informix等。
    • 第三代数据库系统

      • 数据库技术和其他学科内容相结合(分布式数据库、工程数据库、演绎数据库、知识数据库、时态数据库、空间数据库等)

    1.5.2 数据库系统主要研究领域

    • 数据库管理系统软件的研制
      • DBMS核心
      • 一组相互联系的软件系统
        • 工具软件
        • 中间件
    • 数据库设计
      • 数据库设计理论、方法
      • 设计工具
      • 数据模型和数据建模
    • 数据库理论
      • 关系数据模型
      • 关系规范化理论
      • 新的数据模型等

    本章小结

    • 数据库系统概述
      • 数据库的基本概念
        • 信息、数据、数据处理、数据管理、数据库、数据库系统、数据库管理系统
      • 数据管理的发展过程
        • 手工管理、文件系统、数据库系统
      • 数据库系统的特点
        • 结构化、共享性、独立型、统一管理与控制
    • 数据模型
      • 数据模型的概念:对数据特征的抽象描述
      • 概念模型,E-R模型(三种实体型联系,ER图)
      • 逻辑数据模型
        • 层次模型、网状模型、关系模型
    • 数据库系统的体系结构
      • 数据库系统三级模式结构
        • 模式、外模式、内模式
      • 数据库系统的二级映像
        • 模式/外模式映像、模式/内模式映像
    • 数据库系统的组成
      • 数据库、数据库管理系统、应用开发工具、数据库管理员DBA、数据库应用系统、用户
  • 相关阅读:
    Android屏幕尺寸单位转换
    详细解读KMP模式匹配算法
    自定义View实现钟摆效果进度条PendulumView
    解决使用属性动画没有效果,监听发现属性值未发生改变问题
    数组----二维数组中的查找
    JS(二)
    JS(一)
    CSS(二)
    css(一)
    链表----删除链表中重复的节点
  • 原文地址:https://www.cnblogs.com/shy-/p/9038732.html
Copyright © 2020-2023  润新知