MySQL基础操作

前言👀~

结束了java数据结构篇章,紧接着来到MySQL的学习喽~

如果各位对文章的内容感兴趣的话,请点点小赞,关注一手不迷路,如果内容有什么问题的话,欢迎各位评论纠正 🤞🤞🤞

个人主页:N_0050-CSDN博客

相关专栏:java SE_N_0050的博客-CSDN博客 java数据结构_N_0050的博客-CSDN博客


数据库

首先数据库大体分为 关系型数据库非关系型数据库

关系型数据库 : 通过使用 这样的结构来组织数据

例子如下:

Oracle: 甲骨文产品,适合大型项目,适用于做复杂的业务逻辑,收费。

MySQL: 属于甲骨文,不适合做复杂的业务。开源免费。

SQLServer: 微软的产品,安装部署在windows server上,适用于中大型项目。

非关系型数据库 :使用 文档键值对 这样的结构来组织数据

例子如下:

基于键值对(Key-Value):如 memcached、redis
基于文档型:如 mongodb


认识MySQL

MySQL的本体是 服务器 在服务器这边来负责存储和管理数据 把数据存储在硬盘上的

数据库通过硬盘去存储数据 希望存储的数据量大 持久化存储

少数数据库用内存去存储数据,追求速度最大化 例如redis

MySQL是一个数据库软件, mysql是一个 客户端-服务器结构的程序!!!

客户端:主动发起请求的一方

服务端:被动接收请求的一方 一个服务器也给很多客户端提供服务 24小时进行

两者之间通过网络进行通信

客户端给服务器发起的数据,称为请求

服务器给客户端返回的数据,称为响应

内存

其实手机256G内存(实际上是硬盘 叫外存)手机真正的内存 叫运存

外存:硬盘/U盘/光盘

512G的硬盘 图片上就475G的硬盘 可以理解为一个是税前 一个是税后

整个硬盘不光要存储数据 还要存储一些属性(元数据)

硬盘在断电的情况下 里面的数据也就是保持几年到几十年 和内存比时间更久

内存和硬盘的差别:

1.内存速度快,硬盘速度慢 差几千倍,几万倍

2.内存空间小,硬盘空间大 16GB 512GB

3.内存贵,硬盘便宜

4.内存中存储的数据易丢失,硬盘中存储的数据是持久的

分布式系统

一台机器能够处理的数据是有限的 往往需要多台机器配合 去完成更复杂的工作

分布式系统中,机器之间也是通过网络 进行通信

机器之间的关系 机器2既是服务器也是客户端 作为服务器接收1的请求 作为客户端发

送请求至机器3


MySQL 基础

操作数据库的命令,也称为 SQL语句 ,也可以理解为一种编程语言

数据库的操作分为 命令行客户端图形化客户端

数据库操作

此处的 "数据库"指的是一个逻辑上的数据集合

一个 mysql服务器程序,可以在硬盘上去组织保存数据的

mysql服务器 是通过 去组织的,一个mysql服务器上 可以有很多的表 ,就可以把

关联关系 的一些表放到一起,就构成了一个 数据集合 ,此时就称为"数据库",而且一

个mysql服务器上可以有多个这样的 数据库

字符集

字符集(Character Set)是一种字符的集合,它包括了所有可以使用的字符,比如字

母、数字、符号等 简而言之,字符集是一组字符,而编码是把这些字符转换为计算机

可以识别的格式的方法。

一个汉字占几个字节?

不同的字符集,不同的编码方式下,一个汉字占几个字节,是不同的

编码方式

utf8:

utf8是一个变长编码,utf8的字符最短可能是1个字节 最长可能是4个字节 不仅可以

表示中文 也可以表示世界上任何一种语言

使用utf8编码,一个汉字通常是 3个字节

unicode:

是给一个 字符 进行编码的,但是无法给 字符串 进行编码

在java中,char类型,内部编码是unicode String类型,内部编码一般是utf8 (java内部自动完成了

编码转换)


数据库操作

1.创建数据库

create database 表名;

create database if not exists 表名;

create database charset 字符集名字;

注意:

sql语句**英文分号 ;**结尾

sql中特定含义的单词、关键字(数据库名、表名、列名 都不能和关键字重复)

sql的关键字大小写是不敏感

单词之间至少有一个空格

mysql客户端允许你输入sql的时候换行

2.查看数据库

show databases;

3.选中数据库

use 数据库名;

数据库中最关键的操作,就是针对表进行增删改查 表 是从属于 数据库

要针对 表 进行操作,就需要先把哪个数据库的 表 这个事情指定清楚(就是要对数据库中的哪个

表进行操作)

4.删除数据库

drop database 数据库名;

删除操作,删掉的不仅仅是database ,而且也删除了database中所有的表,和表里所有的数据

补充知识点

线上数据库:是被用户访问的数据库,真实用户的信息

线下数据库:开发/测试节点,自己构造的一些 假的 数据

线上的程序一般都会搭配报警程序 报警程序也是一个程序 自动监控mysql服务器的运行状态


数据类型

整数类型和浮点类型:

字符串类型

varchar(size) :里面的size表示该类型里最多存储几个字符(不是字节)一个汉字,算是一个字

符,但是可能是对应多个字节

当你写了size为10,不是说当前立即给你分配10个字符的的存储空间,而是先分配一个比较小的空

间,如果不够,自动扩容,最大的空间不会超过10,开发中表示字符串主要使用的就是这个varchar


日期类型

总结以下需要掌握的


数据表的操作

针对数据表的操作,前提是先 选中数据库

一个表,包含很多行,每一行称为 一条记录

一个行里可能有很多列,每一列称为是一个字段

每个列都是有一个具体的类型的

1.创建表

记得先 选择 数据库 use 数据库名;

**create table 表名(列名 类型,列名 类型 ...);**可以多个

2.查看该数据库中的所有表

show 表名;

3.查看指定表的结构

desc 表名;

4.删除表

drop table 表名;

以上便是本章数据库的一些基础操作,大家伙试着去敲敲感受一下,我们下一章再见💕

相关推荐
亽仒凣凣8 分钟前
Windows安装Redis图文教程
数据库·windows·redis
亦世凡华、16 分钟前
MySQL--》如何在MySQL中打造高效优化索引
数据库·经验分享·mysql·索引·性能分析
YashanDB18 分钟前
【YashanDB知识库】Mybatis-Plus调用YashanDB怎么设置分页
数据库·yashandb·崖山数据库
ProtonBase29 分钟前
如何从 0 到 1 ,打造全新一代分布式数据架构
java·网络·数据库·数据仓库·分布式·云原生·架构
云和数据.ChenGuang6 小时前
Django 应用安装脚本 – 如何将应用添加到 INSTALLED_APPS 设置中 原创
数据库·django·sqlite
woshilys6 小时前
sql server 查询对象的修改时间
运维·数据库·sqlserver
Hacker_LaoYi6 小时前
SQL注入的那些面试题总结
数据库·sql
建投数据7 小时前
建投数据与腾讯云数据库TDSQL完成产品兼容性互认证
数据库·腾讯云
Hacker_LaoYi8 小时前
【渗透技术总结】SQL手工注入总结
数据库·sql
岁月变迁呀8 小时前
Redis梳理
数据库·redis·缓存