当前位置: 首页 > news >正文

详解数据库系统概述

数据库系统概述

  • 1. 数据库(Database)
    • 1.1 定义:
    • 1.2 特点:
    • 1.3 举例:
  • 2. 数据库管理系统(DBMS:Database Management System)
    • 2.1 定义:
    • 2.2 DBMS 的主要功能:
    • 2.3 常见的数据库管理系统:
    • 2.4 工作流程(类比):
  • 3. 数据库系统(Database System)
    • 3.1 定义:
    • 3.2 组成:
    • 3.3 举例:
  • 三者的关系
  • 举例:以电商系统为例
  • 总结(《数据库系统概论》)
    • 数据库
    • 数据库管理系统(DBMS)
    • 数据库系统(DBS)

1. 数据库(Database)

1.1 定义:

数据库是存储数据的地方,通过特定的组织方式把大量的数据存储在一起,便于后续的管理、查询和使用。

  • “数据”是什么?
    数据是我们身边信息的记录,比如超市里的商品清单、公司里的员工工资表、学校里的学生成绩表。这些信息都可以被记录、存储,成为“数据”。

  • “库”是什么?
    “库”就是存储的地方。数据库类似一个数据仓库,它帮助我们有条理地存储这些数据。

1.2 特点:

  • 有组织性:数据按照一定的结构存储,比如分成表格,每一行是一条记录,每一列是一个字段(比如名字、年龄、职位等)。
  • 持久性:数据库中的数据存储在磁盘中,断电也不会丢失。
  • 共享性:多个用户可以同时访问数据库中的数据。
  • 关系性:数据之间存在某种关联(如用户和订单之间的关联)。

1.3 举例:

假如我们在超市工作,超市每天都有很多商品要我们记录:

  • 数据库中可能会有几张表:
    • 商品表:记录商品的名称、价格、库存。
    • 订单表:记录每笔订单的商品编号、数量、客户名称。
    • 客户表:记录客户的姓名、联系方式等信息。

数据存储在表中,比如“商品表”的数据可能是这样的:

商品编号商品名称价格库存量
1001苹果5.00100
1002香蕉3.0050
1003西瓜20.0030

这样的表格存储在数据库中,我们就可以随时查找和操作这些数据。


2. 数据库管理系统(DBMS:Database Management System)

2.1 定义:

数据库管理系统是用于管理数据库的软件工具,它是一个“中间人”,帮助用户和程序高效、安全地与数据库交互。

  • 如果数据库是“仓库”,DBMS 就是“仓库管理员”。
  • 用户(或应用程序)不用直接去翻找数据,而是通过 DBMS 去管理、查询和操作数据库。

2.2 DBMS 的主要功能:

  1. 数据存储:提供高效的存储机制,支持大规模数据的存储。
  2. 数据查询和检索:通过查询语句(如 SQL)快速查找所需数据。例如,“查找所有库存少于 50 的商品”。
  3. 数据更新:支持对数据进行增删改操作。
  4. 数据安全性:控制哪些用户能访问哪些数据(权限管理)。
  5. 并发控制:多用户同时操作时避免冲突,比如两个人同时购买同一件商品,库存不会出错。
  6. 备份与恢复:保证数据不会丢失,即使发生系统故障也能恢复。
  7. 数据完整性:确保数据的正确性和一致性,比如禁止订单中出现不存在的商品编号。

2.3 常见的数据库管理系统:

  • 关系型数据库管理系统(数据以表格形式存储):

    • MySQL:开源,使用最广泛的数据库之一。
    • Oracle:功能强大,多用于企业级项目。
    • SQL Server:微软开发,集成于 Windows 环境中。
    • PostgreSQL:功能强大,支持复杂的关系数据。
  • 非关系型数据库管理系统(数据不以表格形式存储):

    • MongoDB:用 JSON 格式存储数据,适合处理大量非结构化数据。
    • Redis:内存数据库,速度极快,适合实时应用。

2.4 工作流程(类比):

  • 用户通过一个超市管理系统,想知道“苹果的库存量”。
  • 管理系统会向数据库管理系统(DBMS)发送一个查询请求。
  • DBMS 查询数据库后返回结果:苹果库存量是 100。

用户并不需要直接访问数据库,所有的操作都通过 DBMS 完成。


3. 数据库系统(Database System)

3.1 定义:

数据库系统是一个完整的生态系统,包括:

  1. 数据库(Database):存储数据的地方。
  2. 数据库管理系统(DBMS):管理数据库的软件。
  3. 应用程序:与数据库交互的程序,如 ERP 系统、超市收银系统等。
  4. 用户:操作和使用数据库的人,包括普通用户和数据库管理员。

3.2 组成:

数据库系统是一个整体,不只是单一的数据库或 DBMS,而是把存储数据、管理数据的软件,以及使用这些数据的用户和应用程序都包括在内。

3.3 举例:

以一个超市为例:

  • 数据库:存储商品、订单、客户等数据。
  • 数据库管理系统(DBMS):MySQL,用来管理这些数据。
  • 应用程序:超市管理系统(前端和后台)通过 DBMS 访问数据库。
  • 用户
    • 超市的普通员工:用系统查商品库存。
    • 超市的管理员:更新商品价格。
    • 程序员:负责维护数据库系统。

三者的关系

  • 数据库是数据的存储容器,记录了实际的数据内容。
  • DBMS是管理和操作数据库的工具,为用户和应用程序提供接口。
  • 数据库系统是更大的系统,包含数据库、DBMS、应用程序、用户,协同完成数据的存储和使用。

举例:以电商系统为例

假如我们有一个小型电商网站,这个系统中包含以下部分:

  1. 数据库(Database)

    • 用户表:存储用户的信息(如姓名、邮箱、密码)。
    • 商品表:存储商品的信息(如名称、价格、库存量)。
    • 订单表:存储每个订单的详情。
  2. 数据库管理系统(DBMS)

    • 使用 MySQL 作为 DBMS,负责查询、插入、删除数据。
    • 例如,管理员想添加一件商品“蓝牙耳机”,通过 DBMS 发送一条 SQL 语句 INSERT INTO 商品表 ...
  3. 数据库系统(Database System)

    • 包括:
      • 数据库:保存用户、商品、订单等数据。
      • DBMS:MySQL,提供操作数据的能力。
      • 应用程序:电商网站的前端和后台。
      • 用户:客户、管理员、开发人员。

总结(《数据库系统概论》)

数据库

所谓数据库,就是长期存储在计算机内有组织、可共享的大量数据的集合。数据库中的数据按一定的数据模型组织、描述和存储,具有较小的数据冗余、较高的数据独立性和可拓展性,并可为各种用户所共享。

数据库管理系统(DBMS)

数据库管理系统是位于用户与操作系统之间的数据管理软件。它和操作系统一样是计算机的基础软件,也是一类大型复杂的软件系统。他的主要功能包括以下几个方面:

  1. 数据定义功能。数据库管理系统提供数据定义语言(DDL:data definition language)
  2. 数据组织、存储和管理功能
  3. 数据操纵功能。数据库管理系统提供数据操纵语言(DML:data manipulation language)
  4. 数据库的事务管理和运行管理功能
  5. 数据库的建立和维护功能
  6. 其他功能。包括数据库管理系统与网络中其他软件系统的通信功能、一个数据库管理系统与另一个数据库管理系统或文件系统的数据转换功能、异构数据库之间的互访和互操作功能等。

数据库系统(DBS)

数据库系统是指引入数据库后的计算机系统,一般是指由数据库管理系统(及其应用开发工具)、应用系统和数据库管理员组成的存储、管理、处理和维护数据的系统

相关文章:

详解数据库系统概述

数据库系统概述 1. 数据库(Database)1.1 定义:1.2 特点:1.3 举例: 2. 数据库管理系统(DBMS:Database Management System)2.1 定义:2.2 DBMS 的主要功能:2.3 常…...

Windows的docker中安装gitlab

一.Windows的docker中安装gitlab 1.通过阿里云拉取镜像 docker pull registry.cn-hangzhou.aliyuncs.com/lab99/gitlab-ce-zh 2.在本地创建备份数据的目录 mkdir -p D:home/software/gitlab/etc mkdir -p D:home/software/gitlab/logs mkdir -p D:home/software/gitlab/dat…...

基于微信小程序的健身管理系统设计与实现(LW+源码+讲解)

专注于大学生项目实战开发,讲解,毕业答疑辅导,欢迎高校老师/同行前辈交流合作✌。 技术范围:SpringBoot、Vue、SSM、HLMT、小程序、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、安卓app、大数据、物联网、机器学习等设计与开发。 主要内容:…...

windows 安装 mysql 教程

一、下载 点开下面的链接: https://downloads.mysql.com/archives/community/ 点击Download 就可以下载对应的安装包了, 安装包如下: 二、解压 下载完成后我们得到的是一个压缩包,将其解压,我们就可以得到MySQL 8.0.28 的软件本体了(就是…...

Vue2+OpenLayers初始化高德地图

目录 一、案例截图 二、完整代码 一、案例截图 二、完整代码 一键复制即可运行&#xff1a; <template><div id"map-container"></div> </template> <script> import { Map, View } from ol import { Tile as TileLayer } from ol…...

六、深入了解DI

依赖注入是⼀个过程&#xff0c;是指IoC容器在创建Bean时,去提供运⾏时所依赖的资源&#xff0c;⽽资源指的就是对象. 在上⾯程序案例中&#xff0c;我们使⽤了 Autowired 这个注解&#xff0c;完成了依赖注⼊的操作. 简单来说,就是把对象取出来放到某个类的属性中。 关于依赖注…...

IMX6ull项目环境配置

文件解压缩&#xff1a; .tar.gz 格式解压为 tar -zxvf .tar.bz2 格式解压为 tar -jxvf 2.4版本后的U-boot.bin移植进SD卡后&#xff0c;通过串口启动配置开发板和虚拟机网络。 setenv ipaddr 192.168.2.230 setenv ethaddr 00:04:9f:…...

Edge-TTS在广电系统中的语音合成技术的创新应用

Edge-TTS在广电系统中的语音合成技术的创新应用 作者&#xff1a;本人是一名县级融媒体中心的工程师&#xff0c;多年来一直坚持学习、提升自己。喜欢Python编程、人工智能、网络安全等多领域的技术。 摘要 随着人工智能技术的快速发展&#xff0c;文字转语音&#xff08;Te…...

芸众商城小程序会员页面部分图标不显示问题解决办法

我遇到的问题 如下图所示&#xff0c;会员中心这里的图标在小程序端显示异常。但是在网页端又是能够正常显示的。 小程序端截图&#xff1a; 网页端截图&#xff1a; 我的解决方法 检查使用的小程序版本&#xff0c;比如这里使用的是1.2.238版本的小程序&#xff0c;最后…...

手机app如何跳过无障碍权限实现弹框自动点击-ADB连接专题

手机app如何跳过无障碍权限实现弹框自动点击 --ADB连接专题 一、前言 我们在前期的时候&#xff0c;在双SIM卡进行协同外呼和SIM卡切换时&#xff0c;对如何在手机中“执行批处理脚本做自动点击”的内容进行预研&#xff0c;力图使用事件触发和坐标点击等方式来实现手机安装…...

「 机器人 」扑翼飞行器控制的当前挑战与后续潜在研究方向

前言 在扑翼飞行器设计与控制方面,虽然已经取得了显著的进步,但在飞行时间、环境适应性、能量利用效率及模型精度等方面依旧存在亟待解决的挑战。以下内容概括了这些挑战和可能的改进路径。 1. 当前挑战 1.1 飞行时间短 (1)主要原因 能源存储有限(电池容量小)、驱动系…...

Vue入门(Vue基本语法、axios、组件、事件分发)

Vue入门 Vue概述 Vue (读音/vju/&#xff0c;类似于view)是一套用于构建用户界面的渐进式框架&#xff0c;发布于2014年2月。与其它大型框架不同的是&#xff0c;Vue被设计为可以自底向上逐层应用。Vue的核心库只关注视图层&#xff0c;不仅易于上手&#xff0c;还便于与第三…...

DELL EDI:需求分析及注意事项

Dell 的 EDI 需求分析 1.对接 Dell 需要使用的 EDI 传输协议 Dell 支持的传输方式包括&#xff1a; AS2&#xff08;Applicability Statement 2&#xff09;&#xff1a;主要用于安全可靠的数据传输&#xff0c;在使用 AS2 时&#xff0c;所有数据都通过 HTTPS 或 HTTP 协议…...

计算机网络 (62)移动通信的展望

一、技术发展趋势 6G技术的崛起 内生智能&#xff1a;6G将强调自适应网络架构&#xff0c;通过AI驱动的智能算法提升通信能力。例如&#xff0c;基于生成式AI的6G内生智能架构将成为重要研究方向&#xff0c;实现低延迟、高效率的智能通信。信息编码与调制技术&#xff1a;新型…...

java 中多线程、 队列使用实例,处理大数据业务

场景&#xff1a; 从redis 订阅数据 调用线程来异步处理数据 直接上代码 定义线程管理类 import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.BeansException; import org.springframework.beans.factory.BeanFactory; import org…...

13.图形程序接口(Graphics API)

**图形程序接口&#xff08;Graphics API&#xff09;**是计算机图形学中的一个重要概念&#xff0c;可以理解为“程序员与GPU之间的桥梁”。用通俗易懂的方式来解释&#xff1a; 通俗解释&#xff1a;图形API就像翻译官 想象你是一个老板&#xff08;程序员&#xff09;&…...

PPT自动化 python-pptx -7: 占位符(placeholder)

占位符&#xff08;placeholder&#xff09;是演示文稿中用于容纳内容的预格式化容器。它们通过让模板设计者定义格式选项&#xff0c;简化了创建视觉一致幻灯片的过程&#xff0c;同时让最终用户专注于添加内容。这加快了演示文稿的开发速度&#xff0c;并确保幻灯片之间的外观…...

Pyecharts之图表组合与布局优化

在数据可视化中&#xff0c;我们经常需要将多个图表组合在一起&#xff0c;以展示不同维度的数据或者进行对比分析。同时&#xff0c;合理的布局能够提升图表的可读性和用户体验。Pyecharts 提供了强大的组件和方法&#xff0c;让我们可以轻松实现图表的组合和布局优化。本篇将…...

流行的开源高性能数据同步工具 - Apache SeaTunnel 整体架构运行原理

概述 背景 数据集成在现代企业的数据治理和决策支持中扮演着至关重要的角色。随着数据源的多样化和数据量的迅速增长&#xff0c;企业需要具备强大的数据集成能力来高效地处理和分析数据。SeaTunnel通过其高度可扩展和灵活的架构&#xff0c;帮助企业快速实现多源数据的采集、…...

Android vendor.img中文件执行权问题

问题 Android 9、11往vendor.img增加文件&#xff0c;烧写到设备后发现增加的可执行文件没有执行权限。经过漫长查找&#xff0c;终于找到了问题的根源&#xff0c;谨以此篇献给哪些脚踏实地的人们。 根本原因 system/core/libcutils/fs_config.cpp文件&#xff0c;fs_confi…...

关于使用微服务的注意要点总结

一、防止过度设计 微服务的拆分一定要结合团队人员规模来考虑&#xff0c;笔者就曾遇到过一个公司的项目&#xff0c;是从外部采购回来的&#xff0c;微服务划分为十几个应用&#xff0c;我们在此项目基础上进行自行维护和扩展。由于公司业务规模不大&#xff0c;而且二次开发的…...

C++17 新增属性详解

文章目录 1. [[fallthrough]]用途示例应用场景 2. [[maybe_unused]]用途示例应用场景 3. [[nodiscard]]用途示例应用场景 总结 C17标准引入了多个新的属性&#xff08;Attributes&#xff09;&#xff0c;这些属性为代码提供了更丰富的语义表达能力&#xff0c;同时帮助编译器生…...

使用python-docx包进行多文件word文字、字符批量替换

1、首先下载pycharm。 2、改为中文。 3、安装python-docx包。 搜索包名字&#xff0c;安装。 4、新建py文件&#xff0c;写程序。 from docx import Documentdef replace1(array1):# 替换词典&#xff08;标签值按实际情况修改&#xff09;dic {替换词1: array1[0], 替换…...

15_业务系统基类

创建脚本 SystemRoot.cs 因为 业务系统基类的子类 会涉及资源加载服务层ResSvc.cs 和 音乐播放服务层AudioSvc.cs 所以在业务系统基类 提取引用资源加载服务层ResSvc.cs 和 音乐播放服务层AudioSvc.cs 并调用单例初始化 using UnityEngine; // 功能 : 业务系统基类 public c…...

Pyecharts之散点图的视觉扩展

在数据可视化中&#xff0c;散点图是一种强大的工具&#xff0c;可用于展示数据点在二维平面上的分布情况。通过添加各种视觉组件&#xff0c;我们可以让散点图变得更加丰富和具有表现力&#xff0c;更能反映数据的多维度特征。本文将详细解读如何为散点图添加不同的视觉组件&a…...

Java学习教程,从入门到精通,JDBC删除数据库语法知识点(101)

一、JDBC删除数据库语法知识点 1. 概述 JDBC&#xff08;Java Database Connectivity&#xff09;是Java语言中用来规范客户端程序如何来访问数据库的应用程序接口&#xff0c;提供了诸如查询和更新数据库中数据的方法。 在JDBC中&#xff0c;删除数据库的操作主要是通过执行…...

Baklib如何推动企业知识管理的创新与转型探讨

内容概要 在当今快速发展的数字化时代&#xff0c;企业需要不断适应变化&#xff0c;以保持竞争优势。Baklib作为一款企业知识管理中台&#xff0c;扮演着推动数字化转型的重要角色。它通过提供一个集成的知识管理平台&#xff0c;帮助企业高效管理和共享内部及外部的知识资源…...

【算法】递归型枚举与回溯剪枝初识

递归型枚举与回溯剪枝初识 1.枚举子集2.组合型枚举3.枚举排列4.全排列问题 什么是搜索&#xff1f;搜索&#xff0c;是一种枚举&#xff0c;通过穷举所有的情况来找到最优解&#xff0c;或者统计合法解的个数。因此&#xff0c;搜索有时候也叫作暴搜。搜索一般分为深度优先搜索…...

无人机 PX4 飞控 | PX4源码添加自定义参数方法并用QGC显示与调整

无人机 PX4 飞控 | PX4源码添加自定义参数方法并用QGC显示与调整 0 前言 之前文章添加了一个自定义的模块&#xff0c;本篇文章在之前的自定义模块中&#xff0c;添加两个自定义参数 使用QGC显示出来&#xff0c;并通过QGC调整参数值&#xff0c;代码实现参数更新 新增的参…...

《CPython Internals》阅读笔记:p356-p359

《CPython Internals》学习第 19天&#xff0c;p356-p359 总结&#xff0c;总计 4 页。 一、技术总结 1.benchmark suite The benchmark suite is the tool to use when comparing the complete performance of Python. The Python Benchmark suite is a collection of Pyth…...