【MySQL】数据库的开始
前言
数据库是我们学习编程中一个非常重要的内容,像一些什么什么管理系统,如果想要存储数据都是需要连接数据库的。博主之前写过一篇图书管理系统的博客,那时的我还没接触过数据库,所有的数据都是现成创建的,感兴趣的小伙伴可以去看一眼 简单实现图书管理系统,非常的 low。由此可见,掌握数据库知识是很有必要的,今天起,就让我们开始数据库的学习吧
1. 数据库介绍
1.1 什么是数据库
数据库是一种存储、检索和管理数据的系统。它允许用户存储结构化数据,并可以通过编程或查询语言来访问和操作这些数据
在不同语境下,数据库的含义并不相同:
-
我们常说的数据库指的是一类软件,如 Oracle、MySQL、SQL Server 等等,使用这些软件可以把很多数据组织起来,方便我们后续的增删改查
-
数据库也可以指长期储存在计算机内、有组织的、可共享的大量数据集合
我们需要区分好数据库在不同场景下的含义
1.2 数据库的分类
数据库大体上可以分为两类:
- 关系型数据库(RDBMS):是一种基于关系模型的数据库系统,它基于标准的 SQL ,使用表格的形式来组织数据。在关系型数据库中,数据被分为行和列,每行代表一个记录,每列代表一个字段或属性。关系型数据库通过使用表之间的关系来组织数据,这些关系可以是一对一、一对多或多对多
- 非关系型数据库:也被称为 NoSQL 数据库,是一种不使用传统关系模型的数据库系统。NoSQL 数据库的设计目标是为了解决大规模数据集的存储和访问问题,特别是在分布式环境中。它们通常更加灵活,能够存储结构化、半结构化或非结构化的数据
| 关系型数据库 | 非关系型数据库 | |
|---|---|---|
| 数据模型 | 以表格形式存储,通过行和列来组织数据 | 不基于关系模型,数据存储方式多样,如键值对、文档等 |
| 查询语言 | 通常使用 SQL | 使用自定义的查询语言或 API,一般不基于 SQL |
| 数据结构 | 较为固定,需要预先定义表结构 | 结构更加灵活,可以存储不同格式的数据,不需要预先定义模式 |
| 性能 | 处理复杂查询和事务时性能较好 | 处理大量数据的读写操作时性能较好 |
| 使用场景 | 适用于需要复杂查询、事务处理和数据一致性的应用,如金融、会计系统 | 适用于需要高可扩展性、处理大量非结构化数据或分布式数据的应用,如大数据分析、社交网络 |
2. MySQL 介绍
2.1 什么是 SQL
在讲 MySQL 之前,我们需要先来认识以下 SQL:
SQL(Structure Query Language)是一门结构化查询语言,它的诞生可以追溯到 1970 年代,是一门非常古老的语言,很多地方跟我们现在使用的流行语言有着很大的差别。SQL 也是一种声明式语言,用户只需要指定要执行的操作和操作的对象,而不需要编写完成操作的具体步骤,它常用于在关系型数据库管理系统中创建、查询、更新和管理数据
我们要学习的 MySQL 看名字也能知道它跟 SQL 有着密切联系
2.2 什么是 MySQL
MySQL 是一个关系型数据库管理系统,使用的是 SQL 来进行操作
而且 MySQL 也是一个 “客户端+服务器” 结构的程序,“客户端” 和 “服务器” 是两个独立的程序,它们之间通过网络进行通信
| 客户端 | 服务器 |
|---|---|
| 主动发起网络通信的一方 | 被动接收网络通信的一方 |
| 请求:指的是客户端发给服务器数据 | 响应:指的是服务器给客户端返回的数据 |
我们所学的数据库就是使用 MySQL 来进行操作,为什么要选它呢,且听我一一道来
2.3 为什么选择 MySQL
- MySQL 是一个开源软件,这意味着我们可以免费使用它(能白嫖才是真谛)
- MySQL 是最流行的开源数据库之一,它广泛用于 Web 应用、企业应用以及各种需要数据存储和检索的场合(随大流一定差不到哪去)
- 对于初学者来说,MySQL 相对容易学习和使用(比如博主我就是个初学者)
MySQL 还有一大堆好处,什么跨平台啊、高性能啊等等,这里就不一一列举了,当然,我们还是要根据自己的实际需求去选择学习哪种数据库
在博主这里的数据库就指定是 MySQL 啦(绝对不是因为学校要考 MySQL)
结语
今天就简单介绍一下数据库和 MySQL,开个数据库新坑,后续我们将会详细介绍数据库的详细操作,如增删改查(非常刺激)等等,敬请期待吧!
希望大家能喜欢这篇文章,有总结不到位的地方还请多多谅解,若有出现纰漏,希望大佬们看到错误之后能够在私信或评论区指正,博主会及时改正,共同进步!
相关文章:
【MySQL】数据库的开始
前言 数据库是我们学习编程中一个非常重要的内容,像一些什么什么管理系统,如果想要存储数据都是需要连接数据库的。博主之前写过一篇图书管理系统的博客,那时的我还没接触过数据库,所有的数据都是现成创建的,感兴趣的…...
线性稳压电路和开关稳压电路
稳压二极管稳压电路 电网电压增大,导到u1端的电压增大,从而使输出电压,稳压二极管两端的电压增大,稳压二极管两端电压增大,使流过的电注增大。那么,流过线性电阻R的总电流增大。 Ur电压增大,从…...
Leetcode:找出峰值
普通版本 题目链接:2951. 找出峰值 - 力扣(LeetCode) class Solution { public:vector<int> findPeaks(vector<int>& mountain) {int sz mountain.size();vector<int> newMountain;for(int i 1;i < sz-1;i){…...
简单微信企业群消息推送接口
群管理 群发送接口 POST: JSONURL http://localhost:65029/m/wxapi/sendwxmsg{ "nr":"试", --消息 "at":"wxid_y0k4dv0xcav622,wxid_y0k4dv0xcav622",--群wxid "key":"F98F354F1671A2D21BC78C76B95E96EB",--群k…...
超好用!图像去雾算法C2PNet介绍与使用指南
《博主简介》 小伙伴们好,我是阿旭。专注于人工智能、AIGC、python、计算机视觉相关分享研究。 ✌更多学习资源,可关注公-仲-hao:【阿旭算法与机器学习】,共同学习交流~ 👍感谢小伙伴们点赞、关注! 《------往期经典推…...
java中使用mysql的json字段(代码示例)
前言: 最近做了个小项目,第一次使用json类型的数据库字段,这篇博文讲下使用过程中遇到的问题(数据库框架使用MyBatisplus) 应用到项目中的方法: 数据库as_farmer_apply表中的json字段: 实体类…...
GitHub的原理及应用详解(三)
本系列文章简介: GitHub是一个基于Git版本控制系统的代码托管平台,为开发者提供了一个方便的协作和版本管理的工具。它广泛应用于软件开发项目中,包括但不限于代码托管、协作开发、版本控制、错误追踪、持续集成等方面。 GitHub的原理可以简单概括为,在本地创建一个仓库(r…...
Flutter 中的 Offstage 小部件:全面指南
Flutter 中的 Offstage 小部件:全面指南 在Flutter中,Offstage是一个用于控制子组件是否出现在屏幕上的布局小部件。通过Offstage,你可以轻松地将组件从屏幕上隐藏或显示,而不需要从widget树中移除它。这对于实现条件渲染、动画效…...
微信小程序中使用vantUI步骤
第一步,配置project.config.json 在setting中新增如下: "packNpmManually": true,"packNpmRelationList": [{"packageJsonPath": "./package.json","miniprogramNpmDistDir": "./"}], 第…...
说一下 ACID 是什么?
ACID 是数据库事务的四个特性的首字母缩写,包括原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability)。 原子性(Atomicity&…...
深度解读 chatgpt基本原理
ChatGPT(Generative Pre-trained Transformer)是由OpenAI开发的一种大规模语言模型,基于Transformer架构,采用自监督学习和生成式预训练方法。以下是ChatGPT的基本原理的深度解读: ### 1. Transformer架构 Transforme…...
Oracle-修改用户名
1、项目背景 需要将导入一份最新的用户数据在tbl用户上,但需要将原来的tbl用户数据保留并能实现两个用户的比对。 2、解决思路 思路一:1)新建用户tbl_feng,导入数据;2)将两个用户换名称 3)比对 思路二&…...
张量 t-product 积(matlab代码)
参考文献:Tensor Robust Principal Component Analysis with a New Tensor Nuclear Norm 首先是文章2.3节中 t-product 的定义: 块循环矩阵: 参考知乎博主的例子及代码:(t-product与t-QR分解,另一篇傅里叶对…...
爬山算法教程(个人总结版)
背景与简介 爬山算法(Hill Climbing Algorithm)是一种用于解决优化问题的启发式搜索方法。它是一种局部搜索算法,通过不断尝试从当前解出发,在其邻域内寻找更优的解,直到无法找到更优解为止。该算法得名于其类似于登山…...
水电表远程抄表:智能化时代的能源管理新方式
1.行业背景与界定 水电表远程抄表,是随着物联网技术发展,完成的一种新型的能源计量管理方式。主要是通过无线传输技术,如GPRS、NB-IoT、LoRa等,将水电表的信息实时传输到云服务器,进而取代了传统人工当场抄水表。这种…...
物联网应用开发--STM32与机智云通信(ESP8266 Wi-Fi+手机APP+LED+蜂鸣器+SHT20温湿度传感器)
实现目标 1、熟悉机智云平台,会下载APP 2、熟悉新云平台创建产品,项目虚拟调试 3、掌握云平台生成MCU代码,并移植。机智云透传固件的下载 4、具体目标:(1)注册机智云平台;(2&…...
【高阶数据结构(七)】B+树, 索引原理讲解
💓博主CSDN主页:杭电码农-NEO💓 ⏩专栏分类:高阶数据结构专栏⏪ 🚚代码仓库:NEO的学习日记🚚 🌹关注我🫵带你学习更多数据结构 🔝🔝 高阶数据结构 1. 前言2. B树讲解…...
ML307R OpenCPU 网络初始化流程介绍
一、网络初始化流程 二、函数介绍 三、示例代码 四、代码下载地址 一、网络初始化流程 模组的IMEI/SN获取接口可在include\cmiot\cm_sys.h中查看,SIM卡IMSI/ICCID获取接口可以在include\cmiot\cm_sim.h中查看,PDP激活状态查询可以在include\cmiot\cm_modem.h中查看 二、函…...
分享:怎么才能保证大数据查询的准确性?
随着大数据应用到金融风控领域,大数据越来越重要了,很多朋友在查大数据的时候都会遇到一个问题,那就是自己查询的大数据什么信息都没有,要么就是很少,这是什么原因呢?要怎么才能保证大数据查询的准确性呢?下面小编就…...
AI Agent教育行业落地案例
【AI赋能教育】揭秘Duolingo背后的AI Agent,让学习更高效、更有趣! ©作者|Blaze 来源|神州问学 引言 随着科技的迅猛发展,人工智能技术已经逐步渗透到我们生活的各个方面。而随着AI技术的广泛应用,教育培训正引领着一场新的…...
ES6从入门到精通:前言
ES6简介 ES6(ECMAScript 2015)是JavaScript语言的重大更新,引入了许多新特性,包括语法糖、新数据类型、模块化支持等,显著提升了开发效率和代码可维护性。 核心知识点概览 变量声明 let 和 const 取代 var…...
【JVM】- 内存结构
引言 JVM:Java Virtual Machine 定义:Java虚拟机,Java二进制字节码的运行环境好处: 一次编写,到处运行自动内存管理,垃圾回收的功能数组下标越界检查(会抛异常,不会覆盖到其他代码…...
dedecms 织梦自定义表单留言增加ajax验证码功能
增加ajax功能模块,用户不点击提交按钮,只要输入框失去焦点,就会提前提示验证码是否正确。 一,模板上增加验证码 <input name"vdcode"id"vdcode" placeholder"请输入验证码" type"text&quo…...
Keil 中设置 STM32 Flash 和 RAM 地址详解
文章目录 Keil 中设置 STM32 Flash 和 RAM 地址详解一、Flash 和 RAM 配置界面(Target 选项卡)1. IROM1(用于配置 Flash)2. IRAM1(用于配置 RAM)二、链接器设置界面(Linker 选项卡)1. 勾选“Use Memory Layout from Target Dialog”2. 查看链接器参数(如果没有勾选上面…...
Axios请求超时重发机制
Axios 超时重新请求实现方案 在 Axios 中实现超时重新请求可以通过以下几种方式: 1. 使用拦截器实现自动重试 import axios from axios;// 创建axios实例 const instance axios.create();// 设置超时时间 instance.defaults.timeout 5000;// 最大重试次数 cons…...
MySQL 8.0 OCP 英文题库解析(十三)
Oracle 为庆祝 MySQL 30 周年,截止到 2025.07.31 之前。所有人均可以免费考取原价245美元的MySQL OCP 认证。 从今天开始,将英文题库免费公布出来,并进行解析,帮助大家在一个月之内轻松通过OCP认证。 本期公布试题111~120 试题1…...
C++ 求圆面积的程序(Program to find area of a circle)
给定半径r,求圆的面积。圆的面积应精确到小数点后5位。 例子: 输入:r 5 输出:78.53982 解释:由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982,因为我们只保留小数点后 5 位数字。 输…...
SpringTask-03.入门案例
一.入门案例 启动类: package com.sky;import lombok.extern.slf4j.Slf4j; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cache.annotation.EnableCach…...
JVM暂停(Stop-The-World,STW)的原因分类及对应排查方案
JVM暂停(Stop-The-World,STW)的完整原因分类及对应排查方案,结合JVM运行机制和常见故障场景整理而成: 一、GC相关暂停 1. 安全点(Safepoint)阻塞 现象:JVM暂停但无GC日志,日志显示No GCs detected。原因:JVM等待所有线程进入安全点(如…...
【生成模型】视频生成论文调研
工作清单 上游应用方向:控制、速度、时长、高动态、多主体驱动 类型工作基础模型WAN / WAN-VACE / HunyuanVideo控制条件轨迹控制ATI~镜头控制ReCamMaster~多主体驱动Phantom~音频驱动Let Them Talk: Audio-Driven Multi-Person Conversational Video Generation速…...
