1.1 数据库系统概述

news2024/12/23 15:58:57

思维导图:

8c7dd8be5dcf41318d2e5ac922b9d42c.png

449281120ba54caca0075a8502ccb2b0.png

前言:

**数据库前言笔记:**

1. **数据库的价值**
   - 数据管理的高效工具
   - 计算机科学的关键分支

2. **信息资源的重要性**
   - 现代企业或组织的生存和发展关键
   - 建立有效的信息系统至关重要

3. **数据库的应用范围**
   - 从小型系统到大型系统:OLTP, OLAP
   - 多种领域:CAD/CAM, CIMS, e-Government, e-Commerce, GIS等
   - 随互联网普及,日常生活中不可或缺

4. **数据库教育的地位**
   - 计算机与信息管理专业的核心课程
   - 非计算机专业的重要选修课程

5. **本章重点**
   - 介绍数据库的基本概念
   - 数据管理技术的发展
   - 为什么使用数据库技术及其重要性
   - 为后续章节打基础

c657e499ff544ed6ada5b0527a020fc4.jpeg

1.1.1 数据库的四个基本概念

笔记:

1. **数据 (Data)**
   - 定义:描述事物的符号记录。
   - 形式:不仅仅是数字。包括文本、图形、图像、音频、视频等。
   - 现代计算机中的数据:广义的,不只是数值型。
   - 语义:数据和其意义是不可分的。
   - 结构:例如,学生记录描述学生的数据,这是结构化的。

2. **数据库 (DataBase, DB)**
   - 定义:长期储存在计算机内、有组织的、可共享的大量数据的集合。
   - 特点:数据有永久存储、有组织和可共享。
   - 历史背景:以前存放在文件柜,现在在计算机存储设备上。

3. **数据库管理系统 (DataBase Management System, DBMS)**
   - 位置:位于用户与操作系统之间的数据管理软件。
   - 主要功能:
     1. 数据定义:通过数据定义语言定义数据对象的组成与结构。
     2. 数据组织:存储和管理:提高存储空间利用率和存取效率。
     3. 数据操纵:通过数据操纵语言实现对数据库的基本操作。
     4. 事务管理和运行管理:保证数据的安全性、完整性等。
     5. 建立和维护:包括数据库的输入、转换、转储、恢复功能等。
     6. 其他:如与其他软件系统的通信功能、数据转换功能等。

4. **数据库系统 (DataBase System, DBS)**
   - 定义:由数据库、DBMS、应用程序和数据库管理员组成的系统。
   - 组件:
     - 数据库:提供数据的存储功能。

     - DBMS:提供数据的基础功能。
     - 应用程序:根据需求使用数据库。
     - 数据库管理员 (DBA):负责全面管理数据库系统。

69c58897c9434baeb5c87fcb615e6ca5.jpeg 1.1.2 数据库管理技术的产生和发展

**背景**: 数据管理技术是基于对数据进行分类、组织、编码、存储、检索和维护的需求而产生的。这是数据处理活动的核心,涵盖了数据收集、存储、加工和传播的全过程。

**发展阶段**:

1. **人工管理阶段**
   * 时间:20世纪50年代中期以前
   * 硬件:仅有纸带、卡片、磁带,缺乏直接存储设备。
   * 软件:没有操作系统和数据管理软件
   * 特点:
     * 数据不保存。数据主要用于临时计算并在使用后被移除。
     * 应用程序管理数据,需要程序员自行定义、设计和管理数据。
     * 数据不共享,面向单一应用程序,存在大量冗余数据。
     * 数据不具有独立性,任何结构变化都需要对应的应用程序调整。

2. **文件系统阶段**
   * 时间:20世纪50年代后期至60年代中期
   * 硬件:出现磁盘、磁鼓等直接存取设备
   * 软件:操作系统内嵌文件系统
   * 特点:
     * 数据可长期保存。
     * 有文件系统进行数据管理,组织为独立的数据文件。
     * 数据共享性差,仍存在大量冗余数据。
     * 数据独立性差,文件系统仍然针对特定应用,不具备全局视野。

3. **数据库系统阶段**
   * 时间:20世纪60年代后期至今
   * 硬件:大容量磁盘、价格下降
   * 软件:价格上升,引入数据库管理系统(DBMS)
   * 特点:
     * 高度共享性,减少冗余。
     * 数据具有高度物理独立性和一定的逻辑独立性。
     * 整体结构化,使用数据模型进行描述。
     * 数据安全性、完整性、并发控制和恢复能力均由DBMS提供。

**结论**: 数据管理技术的发展经历了从手工管理到文件系统,再到数据库系统的进化过程,每个阶段都代表了技术和应用需求的转变。从文件系统到数据库系统的转变特别标志了数据管理技术的重大飞跃。

1c0c80f45a6345ca9e290c641d9ac440.jpeg

1.1.3 数据库系统的特点

笔记:

通过比较文件系统与数据库系统在学生学籍管理例子中的应用,我们可以明确看到数据库系统的优势。下面概括了数据库系统的主要特点:

1. **数据结构化**  
   数据库系统采用结构化的方法来存储数据,如表格形式,这种形式既直观又容易操作。在给出的例子中,我们可以看到如何使用简单的CREATE语句在数据库中创建结构化的表。

2. **数据独立性**  
   数据库与应用程序是分离的,这意味着可以在不更改应用程序的情况下更改数据库结构。在文件系统中,记录的结构和文件之间的联系是固定的,而在数据库系统中,这种联系是灵活的。

3. **高效的数据操作**  
   使用SQL语言,可以简单、直观地完成复杂的数据操作。在给定的例子中,查询学生信息只需要一条SQL查询语句,而在文件系统中,则需要多行编程代码。

4. **数据完整性和准确性**  
   数据库管理系统通常提供数据验证和约束功能,确保数据的完整性和准确性。

5. **数据安全性**  
   数据库系统有内置的安全机制,如密码保护、访问控制等,以防止未经授权的访问。

6. **并发访问和事务管理**  
   在多用户环境中,数据库系统可以处理多个用户同时访问数据,同时确保数据的一致性和完整性。

7. **数据冗余度低**  
   数据库系统可以避免不必要的数据重复,从而节省存储空间。

8. **开发效率提高**  
   如本例所示,与文件系统相比,使用数据库系统可以大大提高程序员的开发效率。数据库系统提供的高级工具和语言减少了编程的复杂性和时间。

总之,与文件系统和人工管理相比,数据库系统提供了一个高效、结构化、安全的环境,可以满足大型、复杂应用的需求。

主要内容部分:

### 数据库系统的主要特点

1. **数据结构化**:
    - **区别于文件系统**: 数据库是整体结构化的,而文件系统中记录的结构和联系是固化在程序中的。

    - **整体结构化的意义**: 数据库中的数据是面向整个组织或企业的,不仅数据内部是结构化的,还要考虑整个组织的数据结构。
    - **例子**: 学校信息系统中,不只考虑教务处,还要考虑学生处、研究生院、人事处等的管理需求。
    - **数据库的灵活性**: 与文件系统相比,数据库系统中数据的存取更为灵活。

2. **数据的共享性高、冗余度低且易扩充**:
    - **数据共享**: 数据库的数据是面向整个系统的,所以它可以被多个用户和应用共享。
    - **减少数据冗余**: 数据共享可以减少数据冗余和节约存储空间。
    - **数据的不一致性**: 数据库中的数据共享减少了由于数据冗余造成的不一致现象。
    - **系统的扩充性**: 数据库结构化的方式使其容易增加新应用,满足不断变化的需求。

3. **数据独立性高**:
    - **物理独立性**: 数据的物理存储与用户的应用程序是相互独立的。
    - **逻辑独立性**: 数据的逻辑结构与用户的应用程序也是相互独立的。
    - **意义**: 数据与程序的独立性简化了应用程序的编制和维护。

4. **数据由数据库管理系统统一管理和控制**:
    - **数据安全性**: 保护数据,防止不合法使用。
    - **数据完整性**: 控制数据在有效的范围内并保证数据之间的关系。
    - **并发控制**: 在多用户同时使用数据库时,确保不会相互干扰。
    - **数据库恢复**: 在发生故障后,恢复数据库到一个已知的正确状态。

### 总结

数据库是有组织、大量、长期存储在计算机内的数据集合,它为各种用户提供共享功能,具有最小冗余度和较高的数据独立性。数据库管理系统保证了数据的完整性、安全性,可以进行并发控制和在故障后进行恢复。数据库系统的出现转变了信息系统的中心,使其从加工数据的程序转向围绕共享的数据库,这大大提高了数据的利用率、相容性和决策的可靠性。

c5c973d6bb994e2695d426f3634b6777.jpeg

9eb155dc14db475092970601b5d7f21f.jpeg

c8209d49894b4ef881c2c4e1a3611bc0.jpeg

0152a7f9e5ff4ada8a443ca806e3d074.jpeg

19df23fffdc2490ab4438f6c153c7eb8.jpeg

7236f247296342969543cfa8d2ca14a6.jpeg

5d90b30df66b426a9c791c4cf4c2a07a.jpeg

b96c1d5e369944deb5735e864c7b7da1.jpeg


9d775b656bd348faa079a377d635dbeb.jpeg总结:

 

 

 

 

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1059712.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Vue中如何进行移动端手势操作

当开发移动端应用程序时,手势操作是提高用户体验的关键部分之一。Vue.js是一个流行的JavaScript框架,它提供了一种简单而强大的方式来实现移动端手势操作。本文将介绍如何在Vue.js中进行移动端手势操作,包括基本手势,如点击、滑动…

闲聊四种旅游方式

十一长假,先不写那些需要深度思考的话题,先写点轻松的。 关于旅游方式,其实也是受梁斌博士一条微博的一些触动,他说他认识个朋友,自由职业,到处旅游,却从不旺季出行,非常省钱&#x…

关系型数据库设计理论及部署实现

ACID 索引实现方式 事务隔离级别 并发场景 写-写冲突 MVCC 数据库隐式字段 读视图 删表语句 insert与replace区别 Mysql相关参数 索引扫描方式 索引下推 复制日志 基于操作语句复制 基于预写日志(WAL)复制 基于行的逻辑日志复制 基于触发器的复制 主从同步 多主复制 Mysql备份 …

關聯式資料庫模型The relational data model

RELATIONAL MODEL關係模型 結構化查詢語言(SQL)基礎 foundation of structured query language (SQL) 許多資料庫設計方法的基礎foundation of many database design methodologies 資料庫研究基礎 foundation of database research 關係(Relation) …

Curve 文件存储的缓存策略

Curve 文件存储简介 Curve 文件存储的架构如下: 客户端 Posix 兼容:像本地文件系统一样使用,业务无缝接入,无侵入性; 独立的元数据集群:元数据分布式设计,可以无限扩展。同一文件系统可以在数…

Elasticsearch:什么时候应该考虑在 Elasticsearch 中添加协调节点?

仅协调节点(coordinating only nodes)充当智能负载均衡器。 仅协调节点的这种特殊角色通过减轻数据和主节点的协调责任,为广泛的集群提供了优势。 加入集群后,这些节点与任何其他节点类似,都会获取完整的集群状态&…

基于Java的医院挂号就诊系统设计与实现(源码+lw+部署文档+讲解等)

文章目录 前言具体实现截图论文参考详细视频演示为什么选择我自己的网站自己的小程序(小蔡coding)有保障的售后福利 代码参考源码获取 前言 💗博主介绍:✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计划导师、全栈领域优质创作…

yolov5检测cs2中的目标

环境介绍 系统:Windows11 显卡:4070ti cuda:11.8 配置环境 python环境 安装python的虚拟环境anaconda。Free Download | Anaconda 成功安装后可以按Win键搜索anaconda,可以看到桌面版和命令行版本,我们这里直接用命令行版本…

VUE3照本宣科——响应式与生命周期钩子

VUE3照本宣科——响应式与生命周期钩子 前言一、响应式1.ref()2.reactive()3.computed()4.watch()5.代码演示 二、defineProps() 和 defineEmits()三、生命周期钩子1.onMounted()2.onUpdated()3.onUnmounted()4.onBeforeMount()5.onBeforeUpdate()6.onBeforeUnmount()7.onError…

公众号突破2个限制技巧

许多用户在注册公众号时可能会遇到“公众号显示主体已达上限”的问题。这是因为在2018年11月16日对公众号注册数量进行了调整,具体调整如下:1、个人主体注册公众号数量上限从2个调整为1个。2、企业主体注册公众号数量上限从5个调整为2个。这意味着&#…

vs2015 执行后出来空白界面的解决

为什么在visual studio上写的代码点击开始执行,出来的是空白界面?(代码没问题)? - 知乎 Visual Studio 2015 - 新建 C/C 项目 (Project)_vs2015创建一个c项目-CSDN博客

微信小程序点单左右联动的效果实现

微信小程序点单左右联动的效果实现 原理解析:   点击左边标签会跳到右边相应位置:点击改变rightCur值,转跳相应位置滑动右边,左边标签会跳到相应的位置:监听并且设置每个右边元素的top和bottom,再判断当…

Linux内存管理 | 一、内存管理的由来及思想

我的圈子: 高级工程师聚集地 我是董哥,高级嵌入式软件开发工程师,从事嵌入式Linux驱动开发和系统开发,曾就职于世界500强企业! 创作理念:专注分享高质量嵌入式文章,让大家读有所得! …

Linux系统常用指令篇---(一)

Linux系统常用指令篇—(一) 1.cd指令 Linux系统中,磁盘上的文件和目录被组成一棵目录树,每个节点都是目录或文件。 语法:cd 目录名 功能:改变工作目录。将当前工作目录改变到指定的目录下。 (简单理解为进入指定目录下) 举例: cd .. : 返…

maven 初学

1. maven 安装 配置安装 路径 maven 下载位置: D:\software\apache-maven-3.8.6 默认仓库位置: C:\Users\star-dream\.m2\repository 【已更改】 本地仓库设置为&#xff1a;D:\software\apache-maven-3.8.6\.m2\repository 镜像已更改为阿里云中央镜像仓库 <mirrors>…

文件编码格式

一、问题场景 笔者在写controller层出现了一些小问题&#xff1a;测试controller层的一些请求的时候&#xff0c;后端控制台打印的是乱码&#xff0c;网上找了很多说改UTF-8的&#xff0c;但是我去设置里面全部都改为UTF-8了&#xff0c;结果仍然无济于事&#xff0c;甚至还把…

flink自定义窗口分配器

背景 我们知道处理常用的滑动窗口分配器&#xff0c;滚动窗口分配器&#xff0c;全局窗口分配器&#xff0c;会话窗口分配器外&#xff0c;我们可以实现自己的自定义窗口分配器&#xff0c;以实现我们的自己的窗口逻辑 自定义窗口分配器的实现 package wikiedits.assigner;i…

camtasia 2023怎么导出mp4

MP4是常见的视频格式之一&#xff0c;那么使用电脑录屏软件Camtasia完成对视频的剪辑后&#xff0c;如何将其导出为MP4格式保存在我们的电脑中呢&#xff1f; 1.剪辑好视频后&#xff0c;我们找到软件界面右上角的“导出”按钮。 Camtasia Studio- 2023 win-安装包&#xff1a…