MySQL数据类型

文章目录

数据类型

整型

tinyint:1 个字节

smallint:2 个字节

int (integer):4 个字节

bigint:8 个字节



浮点类型

float:4 个字节,单精度(最多 5 位小数)

double:8 个字节, 双精度(最多 16 位小数)



定点类型

decimal:底层实际上采

用字符串的形式存储数字

语法:decimal(m, d)【有效数字最多65, 小数位最多30】

例如:decimal(3, 2):表示3个有效数字, 2个小数,



日期和时间类型

year:1 个字节,只存储年,格式 YYYY


time:3 个字节,只存储时间,格式 HH:MM:SS/HHMMSS


date:3 个字节,只存储年月日,格式:YYYY.MM.DD


datetime:8 个字节,存储年月日 + 时分秒,格式:YYYY-MM-DD HH:MM:SS (从公元 1000 - 公元 9999)


timestamp:4 个字节,存储年月日 + 时分秒, 格式:YYYY-MM-DD HH:MM:SS (从公元 1980 - 公元 2040) 或者格式为 YYYYMMDDHHMMSS(用这种格式,可以省略单引号)



字符串类型

char

char(m): m 长度是0~255个字符。

固定长度字符串,在定义时指定字符串列长。当保存时,在右侧填充空格以达到指定的长度。m表示列的长度,范围是 0~255 个字符。

例如,char(4) 定义了一个固定长度的字符串列,包含的字符个数最大为 4。当插入的字符长度大于4,则报错(除非超过4个长度之后都是空格字符,则空格字符会自动被删除用来保证插入的成功)。

无论中文,英文,数字还是其他都是单个字符


varchar

varchar(m): m长度是0~16383个字符

长度可变的字符串。varchar 的最大实际长度由最长的行的大小和使用的字符集确定,而实际占用的空间为字符串的实际长度加 1。

例如,varchar(50) 定义了一个最大长度为 50 的字符串,如果插入的字符串只有 10 个字符,则实际存储的字符串为 10 个字符和一个字符串结束字符。varchar在值保存和检索时尾部的空格仍保留。


char 和 varchar 对比


图片来源:动力节点


text

  • tinytext 表示长度为 255字符的 TEXT 列。
  • text 表示长度为 65535字符的 TEXT 列。
  • mediumtext 表示长度为 16777215字符的 TEXT 列。
  • longtext 表示长度为 4294967295 或 4GB 字符的 TEXT 列。

enum

  • 语法:<字段名> enum( '值1' , '值2',...)
  • 该字段插入值时,只能是指定的枚举值。

set 类型

  • 语法:<字段名> set( '值1' , '值2' , '值3' , ...)
  • 该字段插入值时,只能是指定的值。
  • 插入的值不能重复



二进制类型

BLOB类型:二进制大对象,可以存储图片、声音、视频等文件。

  • BLOB:小的,最大长度65535个字节
  • MEDIUMBLOB:中等的,最大长度16777215个字节
  • LONGBLOB:大的,最大长度4GB的字节



相关推荐
喵手1 小时前
玩转Java网络编程:基于Socket的服务器和客户端开发!
java·服务器·网络
再见晴天*_*2 小时前
SpringBoot 中单独一个类中运行main方法报错:找不到或无法加载主类
java·开发语言·intellij idea
Hello_Embed4 小时前
STM32HAL 快速入门(二十):UART 中断改进 —— 环形缓冲区解决数据丢失
笔记·stm32·单片机·学习·嵌入式软件
咸甜适中4 小时前
rust语言 (1.88) 学习笔记:客户端和服务器端同在一个项目中
笔记·学习·rust
Grassto5 小时前
RAG 从入门到放弃?丐版 demo 实战笔记(go+python)
笔记
Magnetic_h5 小时前
【iOS】设计模式复习
笔记·学习·ios·设计模式·objective-c·cocoa
hdsoft_huge6 小时前
Java & Spring Boot常见异常全解析:原因、危害、处理与防范
java·开发语言·spring boot
研梦非凡6 小时前
ICCV 2025|从粗到细:用于高效3D高斯溅射的可学习离散小波变换
人工智能·深度学习·学习·3d
雨白6 小时前
Java 多线程指南:从基础用法到线程安全
android·java
Hungry_Shark6 小时前
IDEA版本控制管理之使用Gitee
java·gitee·intellij-idea