MySQL系列之数据类型(String)

MySQL系列之字符串数据类型详解📝

字符串类型是MySQL中最常用的数据类型之一,用于存储文本信息。MySQL提供了多种字符串类型,各有特点,让我们一起来了解它们吧!👋

CHAR与VARCHAR🔤

```sql
CREATETABLEuser_info(
idINT,
usernameCHAR(20),--固定长度字符串
nicknameVARCHAR(50)--可变长度字符串
);
```

-CHAR:固定长度字符串,长度范围0-255字节。存储时会用空格填充到指定长度,适合存储长度固定的数据如MD5值、国家代码等。🔒

-VARCHAR:可变长度字符串,长度范围0-65535字节。只占用实际需要的空间+1-2字节长度前缀,适合存储长度变化的数据如用户名、地址等。🔓

TEXT类型📜

```sql
CREATETABLEarticles(
idINT,
titleVARCHAR(100),
contentTEXT,--最大65535字节
long_contentLONGTEXT--最大4GB
);
```

TEXT系列用于存储大文本数据:
-TINYTEXT:最大255字节
-TEXT:最大65,535字节
-MEDIUMTEXT:最大16,777,215字节
-LONGTEXT:最大4,294,967,295字节

BINARY与VARBINARY🔣

```sql
CREATETABLEbinary_data(
idINT,
fixed_binaryBINARY(10),--固定长度二进制
var_binaryVARBINARY(100)--可变长度二进制
);
```

与CHAR/VARCHAR类似,但存储的是二进制数据而非字符,常用于存储加密数据、图片等二进制内容。💾

ENUM与SET🎚️

```sql
CREATETABLEuser_preferences(
idINT,
genderENUM('male','female','other'),--单选枚举
hobbiesSET('reading','sports','music','travel')--多选集合
);
```

-ENUM:枚举类型,只能选择列表中的一个值
-SET:集合类型,可以选择多个值的组合

选择合适的字符串类型能有效优化存储空间和查询性能,根据实际需求选择最合适的类型吧!💡

相关推荐
星哥的编程之路5 分钟前
别再调 API 就说自己会 RAG 了,看看真正的企业级 AI 智能体长什么样
后端·面试
长大19887 分钟前
C++26 静态反射完整实战:告别宏代码生成,一键实现序列化
后端
yb7799 分钟前
Java 21 虚拟线程最佳实践:虚拟线程如何让高并发 Java 服务更轻更快
后端
fliter12 分钟前
绕过系统 ICMP:用 rawsock、Npcap 和 WMI 找到默认网卡
后端
AHRIKNOW13 分钟前
AFaster:一个开箱即用的 Rust 高性能后端框架模板
后端
小强198814 分钟前
C++20 协程从入门到网络服务
后端
鱼人14 分钟前
C++ 内存模型详解:原子操作、内存屏障
后端
二月龙15 分钟前
RAII 与智能指针深度拆解
后端
极速蜗牛15 分钟前
我在 Taro 小程序项目里实践的 API First + AI 编程方式
前端·人工智能·后端
轻刀快马20 分钟前
跨越软硬件的共鸣(二):从 Cache 写策略看 Redis 与 DB 的一致性博弈
java·开发语言·redis·计算机组成原理