详解数据库系统概述
数据库系统概述
- 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.00 | 100 |
| 1002 | 香蕉 | 3.00 | 50 |
| 1003 | 西瓜 | 20.00 | 30 |
这样的表格存储在数据库中,我们就可以随时查找和操作这些数据。
2. 数据库管理系统(DBMS:Database Management System)
2.1 定义:
数据库管理系统是用于管理数据库的软件工具,它是一个“中间人”,帮助用户和程序高效、安全地与数据库交互。
- 如果数据库是“仓库”,DBMS 就是“仓库管理员”。
- 用户(或应用程序)不用直接去翻找数据,而是通过 DBMS 去管理、查询和操作数据库。
2.2 DBMS 的主要功能:
- 数据存储:提供高效的存储机制,支持大规模数据的存储。
- 数据查询和检索:通过查询语句(如 SQL)快速查找所需数据。例如,“查找所有库存少于 50 的商品”。
- 数据更新:支持对数据进行增删改操作。
- 数据安全性:控制哪些用户能访问哪些数据(权限管理)。
- 并发控制:多用户同时操作时避免冲突,比如两个人同时购买同一件商品,库存不会出错。
- 备份与恢复:保证数据不会丢失,即使发生系统故障也能恢复。
- 数据完整性:确保数据的正确性和一致性,比如禁止订单中出现不存在的商品编号。
2.3 常见的数据库管理系统:
-
关系型数据库管理系统(数据以表格形式存储):
- MySQL:开源,使用最广泛的数据库之一。
- Oracle:功能强大,多用于企业级项目。
- SQL Server:微软开发,集成于 Windows 环境中。
- PostgreSQL:功能强大,支持复杂的关系数据。
-
非关系型数据库管理系统(数据不以表格形式存储):
- MongoDB:用 JSON 格式存储数据,适合处理大量非结构化数据。
- Redis:内存数据库,速度极快,适合实时应用。
2.4 工作流程(类比):
- 用户通过一个超市管理系统,想知道“苹果的库存量”。
- 管理系统会向数据库管理系统(DBMS)发送一个查询请求。
- DBMS 查询数据库后返回结果:苹果库存量是 100。
用户并不需要直接访问数据库,所有的操作都通过 DBMS 完成。
3. 数据库系统(Database System)
3.1 定义:
数据库系统是一个完整的生态系统,包括:
- 数据库(Database):存储数据的地方。
- 数据库管理系统(DBMS):管理数据库的软件。
- 应用程序:与数据库交互的程序,如 ERP 系统、超市收银系统等。
- 用户:操作和使用数据库的人,包括普通用户和数据库管理员。
3.2 组成:
数据库系统是一个整体,不只是单一的数据库或 DBMS,而是把存储数据、管理数据的软件,以及使用这些数据的用户和应用程序都包括在内。
3.3 举例:
以一个超市为例:
- 数据库:存储商品、订单、客户等数据。
- 数据库管理系统(DBMS):MySQL,用来管理这些数据。
- 应用程序:超市管理系统(前端和后台)通过 DBMS 访问数据库。
- 用户:
- 超市的普通员工:用系统查商品库存。
- 超市的管理员:更新商品价格。
- 程序员:负责维护数据库系统。
三者的关系
- 数据库是数据的存储容器,记录了实际的数据内容。
- DBMS是管理和操作数据库的工具,为用户和应用程序提供接口。
- 数据库系统是更大的系统,包含数据库、DBMS、应用程序、用户,协同完成数据的存储和使用。
举例:以电商系统为例
假如我们有一个小型电商网站,这个系统中包含以下部分:
-
数据库(Database):
- 用户表:存储用户的信息(如姓名、邮箱、密码)。
- 商品表:存储商品的信息(如名称、价格、库存量)。
- 订单表:存储每个订单的详情。
-
数据库管理系统(DBMS):
- 使用 MySQL 作为 DBMS,负责查询、插入、删除数据。
- 例如,管理员想添加一件商品“蓝牙耳机”,通过 DBMS 发送一条 SQL 语句
INSERT INTO 商品表 ...。
-
数据库系统(Database System):
- 包括:
- 数据库:保存用户、商品、订单等数据。
- DBMS:MySQL,提供操作数据的能力。
- 应用程序:电商网站的前端和后台。
- 用户:客户、管理员、开发人员。
- 包括:
总结(《数据库系统概论》)
数据库
所谓数据库,就是长期存储在计算机内有组织、可共享的大量数据的集合。数据库中的数据按一定的数据模型组织、描述和存储,具有较小的数据冗余、较高的数据独立性和可拓展性,并可为各种用户所共享。
数据库管理系统(DBMS)
数据库管理系统是位于用户与操作系统之间的数据管理软件。它和操作系统一样是计算机的基础软件,也是一类大型复杂的软件系统。他的主要功能包括以下几个方面:
- 数据定义功能。数据库管理系统提供数据定义语言(DDL:data definition language)。
- 数据组织、存储和管理功能。
- 数据操纵功能。数据库管理系统提供数据操纵语言(DML:data manipulation language)。
- 数据库的事务管理和运行管理功能。
- 数据库的建立和维护功能。
- 其他功能。包括数据库管理系统与网络中其他软件系统的通信功能、一个数据库管理系统与另一个数据库管理系统或文件系统的数据转换功能、异构数据库之间的互访和互操作功能等。
数据库系统(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初始化高德地图
目录 一、案例截图 二、完整代码 一、案例截图 二、完整代码 一键复制即可运行: <template><div id"map-container"></div> </template> <script> import { Map, View } from ol import { Tile as TileLayer } from ol…...
六、深入了解DI
依赖注入是⼀个过程,是指IoC容器在创建Bean时,去提供运⾏时所依赖的资源,⽽资源指的就是对象. 在上⾯程序案例中,我们使⽤了 Autowired 这个注解,完成了依赖注⼊的操作. 简单来说,就是把对象取出来放到某个类的属性中。 关于依赖注…...
IMX6ull项目环境配置
文件解压缩: .tar.gz 格式解压为 tar -zxvf .tar.bz2 格式解压为 tar -jxvf 2.4版本后的U-boot.bin移植进SD卡后,通过串口启动配置开发板和虚拟机网络。 setenv ipaddr 192.168.2.230 setenv ethaddr 00:04:9f:…...
Edge-TTS在广电系统中的语音合成技术的创新应用
Edge-TTS在广电系统中的语音合成技术的创新应用 作者:本人是一名县级融媒体中心的工程师,多年来一直坚持学习、提升自己。喜欢Python编程、人工智能、网络安全等多领域的技术。 摘要 随着人工智能技术的快速发展,文字转语音(Te…...
芸众商城小程序会员页面部分图标不显示问题解决办法
我遇到的问题 如下图所示,会员中心这里的图标在小程序端显示异常。但是在网页端又是能够正常显示的。 小程序端截图: 网页端截图: 我的解决方法 检查使用的小程序版本,比如这里使用的是1.2.238版本的小程序,最后…...
手机app如何跳过无障碍权限实现弹框自动点击-ADB连接专题
手机app如何跳过无障碍权限实现弹框自动点击 --ADB连接专题 一、前言 我们在前期的时候,在双SIM卡进行协同外呼和SIM卡切换时,对如何在手机中“执行批处理脚本做自动点击”的内容进行预研,力图使用事件触发和坐标点击等方式来实现手机安装…...
「 机器人 」扑翼飞行器控制的当前挑战与后续潜在研究方向
前言 在扑翼飞行器设计与控制方面,虽然已经取得了显著的进步,但在飞行时间、环境适应性、能量利用效率及模型精度等方面依旧存在亟待解决的挑战。以下内容概括了这些挑战和可能的改进路径。 1. 当前挑战 1.1 飞行时间短 (1)主要原因 能源存储有限(电池容量小)、驱动系…...
Vue入门(Vue基本语法、axios、组件、事件分发)
Vue入门 Vue概述 Vue (读音/vju/,类似于view)是一套用于构建用户界面的渐进式框架,发布于2014年2月。与其它大型框架不同的是,Vue被设计为可以自底向上逐层应用。Vue的核心库只关注视图层,不仅易于上手,还便于与第三…...
DELL EDI:需求分析及注意事项
Dell 的 EDI 需求分析 1.对接 Dell 需要使用的 EDI 传输协议 Dell 支持的传输方式包括: AS2(Applicability Statement 2):主要用于安全可靠的数据传输,在使用 AS2 时,所有数据都通过 HTTPS 或 HTTP 协议…...
计算机网络 (62)移动通信的展望
一、技术发展趋势 6G技术的崛起 内生智能:6G将强调自适应网络架构,通过AI驱动的智能算法提升通信能力。例如,基于生成式AI的6G内生智能架构将成为重要研究方向,实现低延迟、高效率的智能通信。信息编码与调制技术:新型…...
java 中多线程、 队列使用实例,处理大数据业务
场景: 从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)
**图形程序接口(Graphics API)**是计算机图形学中的一个重要概念,可以理解为“程序员与GPU之间的桥梁”。用通俗易懂的方式来解释: 通俗解释:图形API就像翻译官 想象你是一个老板(程序员)&…...
PPT自动化 python-pptx -7: 占位符(placeholder)
占位符(placeholder)是演示文稿中用于容纳内容的预格式化容器。它们通过让模板设计者定义格式选项,简化了创建视觉一致幻灯片的过程,同时让最终用户专注于添加内容。这加快了演示文稿的开发速度,并确保幻灯片之间的外观…...
Pyecharts之图表组合与布局优化
在数据可视化中,我们经常需要将多个图表组合在一起,以展示不同维度的数据或者进行对比分析。同时,合理的布局能够提升图表的可读性和用户体验。Pyecharts 提供了强大的组件和方法,让我们可以轻松实现图表的组合和布局优化。本篇将…...
流行的开源高性能数据同步工具 - Apache SeaTunnel 整体架构运行原理
概述 背景 数据集成在现代企业的数据治理和决策支持中扮演着至关重要的角色。随着数据源的多样化和数据量的迅速增长,企业需要具备强大的数据集成能力来高效地处理和分析数据。SeaTunnel通过其高度可扩展和灵活的架构,帮助企业快速实现多源数据的采集、…...
Android vendor.img中文件执行权问题
问题 Android 9、11往vendor.img增加文件,烧写到设备后发现增加的可执行文件没有执行权限。经过漫长查找,终于找到了问题的根源,谨以此篇献给哪些脚踏实地的人们。 根本原因 system/core/libcutils/fs_config.cpp文件,fs_confi…...
Cursor实现用excel数据填充word模版的方法
cursor主页:https://www.cursor.com/ 任务目标:把excel格式的数据里的单元格,按照某一个固定模版填充到word中 文章目录 注意事项逐步生成程序1. 确定格式2. 调试程序 注意事项 直接给一个excel文件和最终呈现的word文件的示例,…...
脑机新手指南(八):OpenBCI_GUI:从环境搭建到数据可视化(下)
一、数据处理与分析实战 (一)实时滤波与参数调整 基础滤波操作 60Hz 工频滤波:勾选界面右侧 “60Hz” 复选框,可有效抑制电网干扰(适用于北美地区,欧洲用户可调整为 50Hz)。 平滑处理&…...
Vue3 + Element Plus + TypeScript中el-transfer穿梭框组件使用详解及示例
使用详解 Element Plus 的 el-transfer 组件是一个强大的穿梭框组件,常用于在两个集合之间进行数据转移,如权限分配、数据选择等场景。下面我将详细介绍其用法并提供一个完整示例。 核心特性与用法 基本属性 v-model:绑定右侧列表的值&…...
FastAPI 教程:从入门到实践
FastAPI 是一个现代、快速(高性能)的 Web 框架,用于构建 API,支持 Python 3.6。它基于标准 Python 类型提示,易于学习且功能强大。以下是一个完整的 FastAPI 入门教程,涵盖从环境搭建到创建并运行一个简单的…...
【网络安全产品大调研系列】2. 体验漏洞扫描
前言 2023 年漏洞扫描服务市场规模预计为 3.06(十亿美元)。漏洞扫描服务市场行业预计将从 2024 年的 3.48(十亿美元)增长到 2032 年的 9.54(十亿美元)。预测期内漏洞扫描服务市场 CAGR(增长率&…...
Spring Boot面试题精选汇总
🤟致敬读者 🟩感谢阅读🟦笑口常开🟪生日快乐⬛早点睡觉 📘博主相关 🟧博主信息🟨博客首页🟫专栏推荐🟥活动信息 文章目录 Spring Boot面试题精选汇总⚙️ **一、核心概…...
C# 求圆面积的程序(Program to find area of a circle)
给定半径r,求圆的面积。圆的面积应精确到小数点后5位。 例子: 输入:r 5 输出:78.53982 解释:由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982,因为我们只保留小数点后 5 位数字。 输…...
C++:多态机制详解
目录 一. 多态的概念 1.静态多态(编译时多态) 二.动态多态的定义及实现 1.多态的构成条件 2.虚函数 3.虚函数的重写/覆盖 4.虚函数重写的一些其他问题 1).协变 2).析构函数的重写 5.override 和 final关键字 1&#…...
在鸿蒙HarmonyOS 5中使用DevEco Studio实现企业微信功能
1. 开发环境准备 安装DevEco Studio 3.1: 从华为开发者官网下载最新版DevEco Studio安装HarmonyOS 5.0 SDK 项目配置: // module.json5 {"module": {"requestPermissions": [{"name": "ohos.permis…...
Unity UGUI Button事件流程
场景结构 测试代码 public class TestBtn : MonoBehaviour {void Start(){var btn GetComponent<Button>();btn.onClick.AddListener(OnClick);}private void OnClick(){Debug.Log("666");}}当添加事件时 // 实例化一个ButtonClickedEvent的事件 [Formerl…...
