1.数据库-初识MySQL

1.数据库-初识MySQL

文章目录

一、数据分类

关系型数据库:MySQL、Oracle、SQL Server、SQLite、DB2

非关系型数据库:Redis、MongoDB

注意:创建表时,编码为utf8mb4(数据库也是)

名称 解释 命令
DDL(数据定义语言) 定义和管理数据对象,如数据库,数据表等 CREATE、DROP、ALTER
DML(数据操作语言) 用于操作数据库对象中所包含的数据 INSERT、UPDATE、DELETE
DQL(数据查询语言) 用于查询数据库数据 SELECT
DCL(数据控制语言) 用来管理数据库的语言,包括管理权限及数据更改 GRANT、COMMIT、ROLLBACK

二、DDL

sql 复制代码
#查看所有数据库
SHOW databases;
#切换数据库
use student01;
#创建数据库
create DATABASE if not exists myschool;
#切换数据库
use myschool;
#创建表
CREATE table if not exists grade(
	subjectNo int(11) auto_increment,
	subjectName varchar(50) not null comment "课程名称" ,
	classHour int(4) comment "课时" default 10,
	gradeid int(4) comment "年纪" ,
	primary key(subjectNo)
)
#删除表
drop table grade;
#删除数据库
drop database if exists myschool;

#auto_increment 自动递增
#not null 非空
#comment "课程名称" 注释(纯数字不加"")
#default 10 默认值
#primary key(subjectNo) 主键设置

三、常用的数据类型

1.数值类型
类型 说明 取值范围 存储需求
tinyint 非常小的数据 有符值: -2 7 ~ 2 7 -1 无符号值: 0 ~ 2 8 -1 1 字节
smallint 较小的数据 有符值: -2 15 ~ 2 15 -1 无符号值: 0 ~ 2 16 -1 2 字节
mediumint 中等大小的数据 有符值: -2 23 ~ 2 23 -1 无符号值: 0 ~ 2 24 -1 3 字节
int 标准整数 有符值: -2 31 ~ 2 31 -1 无符号值: 0 ~ 2 32 -1 4 字节
bigint 较大的整数 有符值: -2 63 ~2 63 -1 无符号值: 0 ~2 64 -1 8 字节
float 单精度浮点数 ±1.1754351e -38 4 字节
double 双精度浮点数 ±2.2250738585072014e -308 8 字节
decimal 字符串形式的浮点数 decimal **(** m , d**)** m 个字节
2.字符串类型
类型 说明 最大长度
char**(M)** 固定长字符串,检索快但费空间, 0 <= M <= 255 M****字符
varchar**(M)** 可变字符串****0 <= M <= 65535 变长度
tinytext 微型文本串 28--1****字节
text 文本串 216--1****字节

3.日期和时间型数值类型

类型 说明 取值范围
DATE YYYY-MM-DD**,日期格式** 1000-01-01~ 9999-12-31
TIME Hh:mm:ss ,时间格式 -838:59:59~838:59:59
DATETIME YY-MM-DD hh:mm:ss 1000-01-01 00:00:00 至****9999-12-31 23:59:59
TIMESTAMP YYYYMMDDhhmmss****格式表示的时间戳 197010101000000 ~2037****年的某个时刻
YEAR YYYY****格式的年份值 1901~2155

日期类型默认当前时间: now()或CURRENT_TIMESTAMP

四.储存引擎

常见的MyISAM与InnoDB类型

名称 MyISAM InnoDB
事务处理 不支持 支持
数据行锁定 不支持 支持
外键约束 不支持 支持
全文索引 支持 不支持
表空间大小 较小 较大 **,2****倍**

使用MyISAM: 节约空间及相应速度

复制代码
          |

| 表空间大小 | 较小 | 较大 **,2****倍** |

使用MyISAM: 节约空间及相应速度

使用InnoDB: 安全性,事务处理及多用户操作数据表

相关推荐
C++ 老炮儿的技术栈2 小时前
从 Qt Designer 属性编辑器的层级可以看到继承链
c语言·数据库·c++·qt·sqlite·visual studio
MC皮蛋侠客2 小时前
Redis 系列(一):全景与最小闭环——从 `SET` 命令到内存数据结构
数据结构·数据库·redis
zt1985q3 小时前
本地部署开源网络书签与内容管理工具 Karakeep 并实现外部访问
运维·服务器·网络·数据库·网络协议·开源
IvorySQL4 小时前
PostgreSQL 日报| PostgreSQL 19 默认 WAL 压缩算法(8 月 8 日)
数据库·postgresql·区块链
油丶酸萝卜别吃5 小时前
MySQL B+ 树查询全过程详解
数据库·mysql
leisoo80975 小时前
股票数据本地化存储实战:JSON、数据库与列式存储的方案对比
jvm·数据库·json
Exclusive_Cat5 小时前
MySQL回表机制解析与优化策略
数据库·sql
Cry丶5 小时前
遗留系统数据迁移实战(九):区域编码迁移与补偿接口设计
mysql·数据治理·数据迁移·区域编码·补偿接口·组织区域
circuitsosk5 小时前
向量数据库选型与性能压测:Milvus、Pinecone、Chroma在真实业务下的对比
数据库·python·pinecone·milvus·向量数据库·chroma
影寂ldy5 小时前
SQL 索引(Index)完整笔记
数据库·笔记·sql