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

相关推荐
白仑色19 分钟前
Redis 如何保证数据安全?
数据库·redis·缓存·集群·主从复制·哨兵·redis 管理工具
Apple_羊先森30 分钟前
Oracle表数据维护全流程指南:备份、删除与性能优化
数据库·oracle·性能优化
浩浩测试一下1 小时前
02高级语言逻辑结构到汇编语言之逻辑结构转换 if (...) {...} else {...} 结构
汇编·数据结构·数据库·redis·安全·网络安全·缓存
0wioiw02 小时前
PostgreSQL 免安装
数据库·postgresql
吐个泡泡v3 小时前
Docker部署MySQL完整指南:从入门到实践
mysql·docker·容器·部署
神仙别闹3 小时前
基于 JavaWeb+MySQL设计实现博客管理系统
数据库·mysql
专注VB编程开发20年4 小时前
ACCESS SQL句子最长是多少个字符?
数据库·sql·access
折翼的恶魔4 小时前
SQL181 第二快/慢用时之差大于试卷时长一半的试卷
数据库
DemonAvenger4 小时前
数据库设计原则:从ER图到规范化设计的实战指南
数据库·mysql·架构
悠哉清闲5 小时前
Room 数据存储
android·数据库