数据库系统原理总结之——数据库系统概述

数据库系统概述

第一章 数据库系统概述

一、数据库基本概念

  1. ++数据(Data)++ :描述事务的符号记录 ,是指用物理符号记录下来的 、可以鉴别的信息。
  2. ++数据库(DB)++ :指长期储存 在计算机中的有组织的 、可共享的数据集合。
  3. ++数据库管理系统(DBMS)++ :专门用于建立和管理数据库的一套软件 ,介于应用程序操作系统 之间 。
  4. ++数据库系统(DBS)++ :指在计算机中引入数据库技术之后的系统 。包括 :数据库 、数据库管理系统 以及相关实用工具 、应用程序 、数据库管理员和用户。

二、数据库管理技术的发展

  1. 阶段

    (1) ++人工管理阶段++ :20 世界 50 年代中期以前 。
    特点:(1)数据不保存(2)应用程序管理数据(3) 数据面向应用程序

    (2) ++文件系统阶段++ :20 世纪 50 年代后期到 60 年代中期

    (3) ++数据库系统阶段++ :20 世界 60 年代后期

  2. 数据库系统特点:

    (1)数据集成

    (2)数据共享性高

    (3)数据冗余小

    (4)数据一致性

    (5)数据独立性高

    (6)实施统一管理与控制 ,即数据库保护;

    (7)减少 应用程序开发与维护的工作量

3. 数据库管理系统具有对数据的统一管理与控制功能:

(1) ++数据的安全性++ :指保护数据 ,以防止不合法的使用而造成数据泄密和破坏 。

(2) ++数据的完整性++ :是对数据的正确性 、有效性和相容性要求。

(3) ++并发控制++ :指当多个用户的并发进程同时存取 、修改数据库时 ,对多用户的并发操作加以控制和 协调 。

(4) ++故障恢复++ : DBMS 必须具有将数据库从错误状态恢复到某一已知的正确状态的功能。

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

1. 结构

(1) ++外模式++ (也称子模式或用户模式) :是数据库用户能够看见和使用的局部数据的逻辑结构和特征 的描述 ,是与某一应用有关的数据的逻辑表示 。是用于满足不同数据库用户需求的数据视图, 即 用户视图。

(2) ++模式++ (也称概念模式或逻辑模式) :是数据库中全体数据的逻辑结构和特征的描述 ,是所有用户 的公共数据视图。

(3) ++内模式++ (也称存储模式) :是对数据库中数据物理结构和存储方式的描述 ,是数据在数据库内部 的表示形式 。是内部视图或存储视图 。

2. 数据库系统三级模式结构的特点

(1)一个数据库的整体逻辑结构和特征的描述**(概念模式)是独立于数据库其他层次结构 (内/外模 式)** 的描述 ,其是数据库的核心 ,也是数据库设计的关键 。

(2)一个数据库的内部存储 模式依赖于概念模式 ,但存储模式独立于外部模式,也独立于具体的存储 设备 。

(3)用户逻辑结构(外模式 )是在全局逻辑结构描述的基础上定义的,它面向具体的应用程序,独立于内部模式 和存储设备。

(4)特定的应用程序是在外模式的逻辑结构上编写的,它依赖于特定的外模式,与数据库的模式和存储结构独立。

3. 外模式/模式映像及其如何保证数据的逻辑独立性 。

(1)外模式/模式 映像定义了各个外模式与概念模式之间的映像关系 ,这些映像定义通常在各自的外 模式中加以描述 。由于同一个模式可以有任意多个外模式, 因此对于每一个外模式 ,数据库系统 都会有一个外模式/模式映像。

(2)数据库系统的模式如若发生改变 ,数据库管理员(DBA)通常会对各个外模式/模式的映像做出相 应的改变 ,以使那些对用户可见的外模式保持不变 ,从而应用程序的编程人员就不必去修改那些 依据数据的外模式所编写的应用程序 ,如此实现了外模式不受概念模式变化的影响 ,并保证了数 据与程序的逻辑独立性

四、数据库系统的运行与应用结构

1. 客户/服务器结构( C/S ):

(1)客户端(或前台 、表示层) :命令行客户端 、图形化界面 管理工具 、应用程序等 。主要完成与数 据库使用者的交互任务 。

(2)服务器(或后台 、数据层) : 数据库管理系统 。主要负责数据管理。
2. 浏览器/服务器结构( B/S):

基于 Web 应用的客户/服务器结构,也称为三层客户/服务器结构(表示层 、处理层(中间层) 、数据层)

五、数据模型的分类

1. 概念层数据模型

(1) 实体 : 客观存在并可相互区别的事物称为实体。

(2) 属性 :实体所具有的某种特性称为实体的属性 。

2. 逻辑层数据模型 : 主要的逻辑数据模型:
(1)层次模型;(2) 网状模型;(3)关系模型;(4)面向对象模型 。

3. 物理层数据模型

相关推荐
Coder_Boy_4 小时前
技术让开发更轻松的底层矛盾
java·大数据·数据库·人工智能·深度学习
helloworldandy5 小时前
使用Pandas进行数据分析:从数据清洗到可视化
jvm·数据库·python
数据知道6 小时前
PostgreSQL 故障排查:如何找出数据库中最耗时的 SQL 语句
数据库·sql·postgresql
qq_12498707536 小时前
基于SSM的动物保护系统的设计与实现(源码+论文+部署+安装)
java·数据库·spring boot·毕业设计·ssm·计算机毕业设计
枷锁—sha6 小时前
【SRC】SQL注入WAF 绕过应对策略(二)
网络·数据库·python·sql·安全·网络安全
Coder_Boy_6 小时前
基于SpringAI的在线考试系统-考试系统开发流程案例
java·数据库·人工智能·spring boot·后端
Gain_chance7 小时前
35-学习笔记尚硅谷数仓搭建-DWS层最近n日汇总表及历史至今汇总表建表语句
数据库·数据仓库·hive·笔记·学习
此生只爱蛋7 小时前
【Redis】主从复制
数据库·redis
马猴烧酒.7 小时前
【面试八股|JAVA多线程】JAVA多线程常考面试题详解
java·服务器·数据库
天天爱吃肉82188 小时前
跟着创意天才周杰伦学新能源汽车研发测试!3年从工程师到领域专家的成长秘籍!
数据库·python·算法·分类·汽车