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: 安全性,事务处理及多用户操作数据表

相关推荐
tatasix15 分钟前
MySQL UPDATE语句执行链路解析
数据库·mysql
南城花随雪。28 分钟前
硬盘(HDD)与固态硬盘(SSD)详细解读
数据库
儿时可乖了29 分钟前
使用 Java 操作 SQLite 数据库
java·数据库·sqlite
懒是一种态度31 分钟前
Golang 调用 mongodb 的函数
数据库·mongodb·golang
天海华兮33 分钟前
mysql 去重 补全 取出重复 变量 函数 和存储过程
数据库·mysql
gma9991 小时前
Etcd 框架
数据库·etcd
爱吃青椒不爱吃西红柿‍️1 小时前
华为ASP与CSP是什么?
服务器·前端·数据库
Yz98762 小时前
hive的存储格式
大数据·数据库·数据仓库·hive·hadoop·数据库开发
武子康2 小时前
大数据-231 离线数仓 - DWS 层、ADS 层的创建 Hive 执行脚本
java·大数据·数据仓库·hive·hadoop·mysql
黑色叉腰丶大魔王2 小时前
《MySQL 数据库备份与恢复》
mysql