MySQL(数据库)

1.数据库?

数据库是管理数据(增删改查CRUD)的软件

MySQL(开源&免费) 是一个数据库软件 (客户端-服务器)结构的软件

客户端服务器通过网络进行通信

客户端(Client):主动发起请求的一方,客户端给服务器发起的数据称为请求(request)

服务器(Server):被动接受请求的一方,服务器给客户端返回的数据称为响应(response)

2.mysql安装

安装mysql服务器和客户端

mysql服务器:真正存储数据的部分 (开始菜单 搜索服务 找到MySql),数据存储在硬盘中

服务器7*24小时运行,(每时每刻)

客户端:

1)官方客户端(自带命令行客户端)

workbench官方提供的图形化的客户端

2)第三方客户端 例:DataGrip

客户端链接成功:

3.相关数据库操作

1)创建数据库

复制代码
create database 数据库名;

数据库是唯一的,不能创建两个名字一样的数据库

复制代码
create database if not exists java241120;

此时不会因为数据库同名报错,发现数据库已经存在是不会继续创建数据库的

创建数据库的时候可以手动指定字符集 charset(字符集名字),mysql默认的字符集是拉丁文,不支持中文,(GBK,UTF8支持中文的编码)

不同的字符集,不同的编码方式,汉字占的字节数不同,使用utf8编码汉字通常是3个字节;

使用默认字符集gbk编码,汉字占2个字节

复制代码
character set charset_name;

2)查看数据表

列出当前的mysql服务器上一共有哪些数据库

复制代码
show databases;

3)选中数据库

复制代码
use 数据库名;

针对哪个数据库里的表进行增删改查操作;

4)删除数据库

复制代码
drop database 数据库名;

删除了database中所有的表,和表里所有的数据;

4.相关数据表的操作(前提:选中数据库)

1)创建表

复制代码
create table 表名(列名 类型,列名 类型...);

如果表名/列名和关键字一样,要用反引号``来把表名/列名引起来

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

复制代码
show tables;查看当前选中数据库的所有表;

3)查看指定表的结构

复制代码
desc 表名;

describe描述;field字段;int(11) 11表示显示的宽度,显示int类型的时候最多占11个字符的宽度;Null YES 允许这一列为空值;Key 约束;Default 默认值;Extra 额外信息;

4)删除表

复制代码
drop table 表名;

删除表及表中的数据;

5)常见数据类型

|---------------|-----------|-------------------------------|
| 数据类型 | 大小 | 说明 |
| TINYINT | 1字节 | |
| SMALLINT | 2字节 | |
| INT | 4字节 | |
| BIGINT | 8字节 | |
| FLOAT(M.D) | 4字节 | 单精度,M指定长度,D指定小数位数,会发生精度丢失 |
| DOUBLE(M,D) | 8字节 | |
| DECIMAL(M,D) | M/D最大值+2 | 双精度,M指定长度,D指定小数位数,精确数值 |
| VARCHAR(SIZE) | 0-65535字节 | 可变长度字符串,SIZE表示该类型里最多存储几个字符 |
| TEXT | 0-65535字节 | 长文本数据 |
| BLOB | 0-65535字节 | 二进制形式的长文本数据(音乐,图片,视频,属于二进制数据) |
| MEDIUMTEXT | | 中等长度文本数据 |
| DATETIME | 8字节 | 时间日期 |
| TIMESTAMP | 4字节 | 时间戳 |

计算机使用时间戳表示数据:以1970年1月1日0时0分0秒作为基准,计算当前时刻和基准时刻的 秒数/毫秒数/微秒数 之差

decimal,精度高,运算速度慢,效率低,计算准

相关推荐
AOwhisky4 小时前
MySQL 学习笔记(第四期):SQL 语言之多表查询
linux·运维·网络·数据库·笔记·学习·mysql
小红卒4 小时前
mysql之udf提权
数据库·mysql·网络安全
Trouvaille ~5 小时前
【Redis篇】Redis 哨兵(Sentinel):高可用自动故障转移
数据库·redis·缓存·中间件·sentinel·高可用·哨兵
qfljg5 小时前
oracle 迁移到postgres
数据库·oracle
giaz14n9X6 小时前
Redis 分布式锁进阶第五十七篇
数据库·redis·分布式
剑神一笑6 小时前
Linux ls 命令深度解析:从目录遍历到颜色输出的实现原理
linux·服务器·数据库
Maynor9966 小时前
Codex API 网关迁移与流量优化实战
数据库·oracle
WyCAGy8ij6 小时前
Redis 分布式锁进阶第二篇讲解
数据库·redis·分布式
南极企鹅7 小时前
MySQL的两大支柱:undo Log&redo log
数据库·mysql·oracle
智航GIS7 小时前
ArcGIS大师之路500技---078文件数据库的加密与解密
数据库·arcgis