【MySQL】MySQL的介绍MySQL数据库及MySQL表的基本操作
文章目录
- 数据库的介绍
- 什么是数据库
- 数据库分类
- MySQL的介绍
- 数据库的基本操作
- 数据库的操作
- 创建数据库
- 查看所有数据库
- 选中指定的数据库
- 删除数据库
- 常用数据类型
- 数值类型
- 字符串类型
- 日期类型
- 表的操作
- 创建表
- 查看指定数据库下的所有表
- 查看指定表的结构
- 删除表
- 小练习
数据库的介绍
什么是数据库
数据库是“一类软件”,这样的软件能够针对数据进行管理(增删改查)
存储数据用文件就可以了,为什么要做数据库呢?
文件保存数据有以下几个缺点:
- 文件的安全性问题
- 文件不利于数据查询和管理
- 文件不利于存储海量数据
- 文件在程序中控制不方便
数据库存储介质:
- 磁盘
- 内存
数据库分类
数据库大体可以分为关系型数据库和非关系型数据库。
关系型数据库:对于存储的数据,格式上有严格要求。类似于excle表格的方式来存储的。例如:MySQL,Oracle,SQL Server,SQLite.
非关系型数据库:存储方式比较灵活,相比于关系型数据库,功能更少。有事性能更快,同时也更好的能适应分布式环境(高并发,大数据,分布式,微服务)
关系型数据库和非关系型数据库的区别:
MySQL的介绍
MySQL是一个客户端服务器结构的程序。
客户端(client):主动发送数据的一方
服务器(server):被动接受数据的一方
请求(request):客户端给服务器发送的数据
响应(response):服务器给客户端返回的数据
服务器是存储数据的本体。数据是存储在主机的硬盘上的。一个计算机组成部分主要是CPU,存储器,输入设备,输出设备。遵循冯诺依曼体系结构。
接下来我们来说一下存储器。
存储器分为内存和外存两种。
内存指的是是运行内存。
外存则是硬盘,软盘,U盘,光盘等。
内存和外存的区别:
- 内存上读写数据的速度快,外存的读写速度慢
- 内存空间比较小,外存空间比较大
- 内存比外存贵
- 内存的数据是“易失”断电之后,数据就会丢失。外存的数据是“持久”的,断电之后,数据还在
数据库存储的数据,存储空间很大,持久化保存。
关系型数据库具体组织数据的格式/结构
数据库的基本操作
数据库的操作
指的是MySQL服务器上存在的多个数据集合。
创建数据库
create database 数据库名;
这样,我们就创建好了一个数据库。create database都是SQL中的关键字,有特定含义的单词。这里的关键字是不区分大小写的。
在创建数据库的时候,还可以指定数据库的字符集。例如使用utf8字符集:
create database student charset utf8;
对于汉字来说,utf8一般是三个字节
在创建数据库的时候,我们可以加上这个:
if not exists
意思是如果存在就不创建了,不存在才真创建。例如:
我们可以看到,只是报了一个警告。
查看所有数据库
show databases;
注意databases是复数形式。
选中指定的数据库
一个MySQL服务器上,数据库可以有很多个。要进行操作,就需要先确定是要针对那个数据库进行。
use 数据库名;
后续操作都是针对这个数据库来展开的。
删除数据库
drop database 数据库名;
可以看到,Java106已经被删除。
在我们实际操作删除数据库的时候,一定要非常注意。数据库的删除的影响是非常大的。所以在操作删除数据库的时候一定要做到谨慎。
常用数据类型
数值类型
在MySQL的数据类型中,数据库里的表,每一个列都是带有类型的(例如整数,浮点数,字符串)。(所有行的对应列存的数据都是一类的)
以上数据类型不区分大小写。
值得注意的是:在单/双精浮中。M表示有效数字的位数。D表示小数点后保留几位。但是因为浮点数在内存中的存贮方式,会导致小数的存储不精确。所以我们有了decimal数据类型来精确表示浮点数。但是decimal牺牲了存储空间,牺牲了运算速度。
如图所示,常用的类型有:int,double,decimal
字符串类型
varchar是最常用的表示字符串的类型。带有一个参数,约定了存储的最大空间。例如:varchar(128)表示这个列最多存128个字符。根据实际需求,来决定设置多长。
text 和mediumtext 更适用于更长的字符串。
blob:主要存二进制数据。
(小tip:如何区分文件是文本还是二进制?使用记事本打开文件,如果是乱码就是二进制,如果可以看懂就是文本。)
日期类型
TIMESTAMP中,产生随机数中。有一个伪随机(随机种子,只要种子一样,就需要让每次程序启动都设置个不同的随机种子。典型的就是“时间戳”)
计算机中产生的随机数,不一定是真随机。大多是伪随机(通过一系列复杂的数学公式,针对某个数字进行数学变换,每变换一次,就会得到一个新的数字。这个数字和之前的数字相比,看起来毫无关联。并且生成的数字足够多,概率分布也是均匀的。)
表的操作
需要操作数据库中的表时,需要先使用该数据库
use db_test;
创建表
create table 表名(列名 类型,列名 类型...);
注意:
- 注意参数的格式书写。
- varchar(20);此处的单位是字符,不是字节。(一个字符可能是多个字节。)
- 同一个数据库中,不能有两个表,名字相同。如果真的想使用,可以给表名/列名加上反引号
- comment表示注释,这个注释只能在创建表的时候使用,其他时候用不了。
查看指定数据库下的所有表
前提是已经选中了数据库。选中哪个数据库,就能看到那些数据表。
show tables;
查看指定表的结构
desc 表名;
删除表
drop table 表名;
值得注意的是,删除表和删除数据库的操作都是非常危险的。要谨慎!!!
小练习
相关文章:

【MySQL】MySQL的介绍MySQL数据库及MySQL表的基本操作
文章目录数据库的介绍什么是数据库数据库分类MySQL的介绍数据库的基本操作数据库的操作创建数据库查看所有数据库选中指定的数据库删除数据库常用数据类型数值类型字符串类型日期类型表的操作创建表查看指定数据库下的所有表查看指定表的结构删除表小练习数据库的介绍 什么是数…...
【每日随笔】社会上层与中层的博弈 ( 技术无关、没事别点进来看 | 社会上层 | 上层与中层的保护层 | 推荐学习的知识 )
文章目录一、社会上层二、上层与中层的保护层三、推荐学习的知识一、社会上层 社会上层 掌握着 生产资料 和 权利 ; 社会中层 是 小企业主 和 中产打工人 ; 上层 名额有限 生产资料所有者 : 垄断巨头 , 独角兽 , 大型企业主 , 大型企业股东 , 数量有限 ;权利所有者 : 高级别的…...

Cookie 和 Session的区别
文章目录时间:2023年3月23日第一:什么是 Cookie 和 Session ?什么是 Cookie什么是 Session第二:Cookie 和 Session 有什么不同?第三:为什么需要 Cookie 和 Session,他们有什么关联?第四&#x…...

leetcode使用vscode调试C++代码
leetcode使用vscode调试C代码 这里记录一下大体思路吧,关于细节配置放上别的博主的链接,他们讲的更好 vscode只是编辑器,相当于记事本,需要下载minGW提供的编译器和调试器 官方介绍: C/C拓展不包括编译器或调试器&…...

树莓派Linux源码配置,树莓派Linux内核编译,树莓派Linux内核更换
目录 一 树莓派Linux的源码配置 ① 内核源码下载说明 ② 三种方法配置源码 二 树莓派Linux内核编译 ① 内核编译 ② 编译时报错及解决方案(亲测) 三 更换树莓派Linux内核 操作步骤说明 ● dmesg报错及解决方案(亲测࿰…...
【C语言】深度讲解 atoi函数 使用方法与模拟实现
文章目录atoi使用方法:atoi模拟实现atoi 功能:转化字符串到整数 头文件: #include <stdlib.h> int atoi (const char * str); 参数 str:要转换为整数的字符串 返回值 如果转换成功,函数将转换后的整数作为int值…...

HTTPS的加密流程
1、概念HTTPS 是一个应用层协议,是在 HTTP 协议的基础上引入了一个加密层。HTTP 协议内容都是按照文本的方式明文传输的,这就导致在传输过程中出现一些被篡改的情况。HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协…...

STM32配置读取BMP280气压传感器数据
STM32配置读取BMP280气压传感器数据 BMP280是在BMP180基础上增强的绝对气压传感器,在飞控领域的高度识别方面应用也比较多。 BMP280和BMP180的区别: 市面上也有一些模块: 这里介绍STM32芯片和BMP280的连接和数据读取。 电路连接 BMP28…...

【Linux】 基础IO——文件(中)
文章目录1. 文件描述符为什么从3开始使用?2. 文件描述符本质理解3. 如何理解Linux下的一切皆文件?4. FILE是什么,谁提供?和内核的struct有关系么?证明struct FILE结构体中存在文件描述符fd5. 重定向的本质输出重定向输…...

蓝桥杯刷题冲刺 | 倒计时13天
作者:指针不指南吗 专栏:蓝桥杯倒计时冲刺 🐾马上就要蓝桥杯了,最后的这几天尤为重要,不可懈怠哦🐾 文章目录1.母牛的故事2.魔板1.母牛的故事 题目 链接: [递归]母牛的故事 - C语言网 (dotcpp.c…...

MIPI D-PHYv2.5笔记(5) -- 不同的PHY配置方式
声明:作者是做嵌入式软件开发的,并非专业的硬件设计人员,笔记内容根据自己的经验和对协议的理解输出,肯定存在有些理解和翻译不到位的地方,有疑问请参考原始规范看 规范5.7章节列举了一些常见的PHY配置,但实…...

【周末闲谈】文心一言,模仿还是超越?
个人主页:【😊个人主页】 系列专栏:【❤️周末闲谈】 周末闲谈 ✨第一周 二进制VS三进制 文章目录周末闲谈前言一、背景环境二、文心一言?(_)?三、文心一言的优势?😗😗😗四、文心一…...

《一“企”谈》 | 「佛山市政」:携手企企通,让采购业务数智化
近日,国家施工总承包壹级企业「佛山市市政建设工程有限公司」(以下简称“佛山市政”)正积极布局数字化建设工作,基于采购业务数智化,携手企企通打造了SaaS采购云平台。 01、岭南建筑强企 匠心铸造精品 …...

Spark运行架构
目录 1 运行架构 2 核心组件 2.1 Driver 2.2 Executor 2.3 Master & Worker 2.4 ApplicationMaster 3 核心概念 3.1 Executor 与 Core 3.2 并行度( Parallelism) 3.3 有向无环图( DAG) 4 提交流程 …...

基于卷积神经网络CNN的水果分类预测,卷积神经网络水果等级识别
目录 背影 卷积神经网络CNN的原理 卷积神经网络CNN的定义 卷积神经网络CNN的神经元 卷积神经网络CNN的激活函数 卷积神经网络CNN的传递函数 卷积神经网络CNN水果分类预测 基本结构 主要参数 MATALB代码 结果图 展望 背影 现在生活,为节能减排,减少电能…...
Spring Boot 框架总结
Spring Boot 框架总结 1. springboot的引言 Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化Spring应用的 初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不 再需要定义样板化的配置。通过这种方式࿰…...

【数据结构】第五站:带头双向循环链表
目录 一、链表的八种结构 二、带头双向循环链表的实现 1.链表的定义 2.链表的接口定义 3.接口的具体实现 三、带头双向循环链表的完整代码 四、顺序表和链表的区别 一、链表的八种结构 我们已经知道链表可以有以下三种分法 而这三种结构又可以排列组合,形成八…...
Springboot生成二维码
Springboot生成二维码整合 我们使用两种方式,去生成二维码,但是其实,二维码的生成基础,都是zxing包,这是Google开源的一个包,第一种是使用原始的zxing方式去实现,第二种是使用hutool来实现&…...

“独裁者”何小鹏,再造小鹏汽车
文丨智能相对论 作者丨沈浪 如果没有何小鹏,小鹏汽车将失去灵魂。 2014年,夏珩、何涛等人在广州组建小鹏汽车(当时还叫“橙子汽车”),何小鹏还只是股权投资人。 夏珩、何涛原任职于广汽,负责新能源汽车…...

数据结构 | 泛型 | 擦除机制| 泛型的上界
目录 编辑 1.泛型 1.1Object类引出泛型概念 2.泛型语法 2.1泛型编写代码 3.泛型的机制 3.1擦除机制 4.泛型的上界 4.1泛型上界的语法 4.2泛型上界的使用 5.泛型方法 5.1泛型方法语法 5.2泛型方法的使用 1.泛型 一般的类和方法中,只能使用具体的代码…...

Chapter03-Authentication vulnerabilities
文章目录 1. 身份验证简介1.1 What is authentication1.2 difference between authentication and authorization1.3 身份验证机制失效的原因1.4 身份验证机制失效的影响 2. 基于登录功能的漏洞2.1 密码爆破2.2 用户名枚举2.3 有缺陷的暴力破解防护2.3.1 如果用户登录尝试失败次…...
在软件开发中正确使用MySQL日期时间类型的深度解析
在日常软件开发场景中,时间信息的存储是底层且核心的需求。从金融交易的精确记账时间、用户操作的行为日志,到供应链系统的物流节点时间戳,时间数据的准确性直接决定业务逻辑的可靠性。MySQL作为主流关系型数据库,其日期时间类型的…...

Day131 | 灵神 | 回溯算法 | 子集型 子集
Day131 | 灵神 | 回溯算法 | 子集型 子集 78.子集 78. 子集 - 力扣(LeetCode) 思路: 笔者写过很多次这道题了,不想写题解了,大家看灵神讲解吧 回溯算法套路①子集型回溯【基础算法精讲 14】_哔哩哔哩_bilibili 完…...

前端导出带有合并单元格的列表
// 导出async function exportExcel(fileName "共识调整.xlsx") {// 所有数据const exportData await getAllMainData();// 表头内容let fitstTitleList [];const secondTitleList [];allColumns.value.forEach(column > {if (!column.children) {fitstTitleL…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院挂号小程序
一、开发准备 环境搭建: 安装DevEco Studio 3.0或更高版本配置HarmonyOS SDK申请开发者账号 项目创建: File > New > Create Project > Application (选择"Empty Ability") 二、核心功能实现 1. 医院科室展示 /…...

IT供电系统绝缘监测及故障定位解决方案
随着新能源的快速发展,光伏电站、储能系统及充电设备已广泛应用于现代能源网络。在光伏领域,IT供电系统凭借其持续供电性好、安全性高等优势成为光伏首选,但在长期运行中,例如老化、潮湿、隐裂、机械损伤等问题会影响光伏板绝缘层…...

使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台
🎯 使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台 📌 项目背景 随着大语言模型(LLM)的广泛应用,开发者常面临多个挑战: 各大模型(OpenAI、Claude、Gemini、Ollama)接口风格不统一;缺乏一个统一平台进行模型调用与测试;本地模型 Ollama 的集成与前…...
MySQL JOIN 表过多的优化思路
当 MySQL 查询涉及大量表 JOIN 时,性能会显著下降。以下是优化思路和简易实现方法: 一、核心优化思路 减少 JOIN 数量 数据冗余:添加必要的冗余字段(如订单表直接存储用户名)合并表:将频繁关联的小表合并成…...

c++第七天 继承与派生2
这一篇文章主要内容是 派生类构造函数与析构函数 在派生类中重写基类成员 以及多继承 第一部分:派生类构造函数与析构函数 当创建一个派生类对象时,基类成员是如何初始化的? 1.当派生类对象创建的时候,基类成员的初始化顺序 …...

系统掌握PyTorch:图解张量、Autograd、DataLoader、nn.Module与实战模型
本文较长,建议点赞收藏,以免遗失。更多AI大模型应用开发学习视频及资料,尽在聚客AI学院。 本文通过代码驱动的方式,系统讲解PyTorch核心概念和实战技巧,涵盖张量操作、自动微分、数据加载、模型构建和训练全流程&#…...