23、varchar与char的区别

varchar与char的区别

char的特点

  1. char表示定长字符串,长度是固定的;
  2. 如果插入数据的长度小于char的固定长度时,则用空格填充;
  3. 因为长度固定,所以存取速度要比varchar快很多,甚至能快50%,
  4. 但正因为其长度固定,所以会占据多余的空间,是空间换时间的做法;
  5. 对于char来说,最多能存放的字符个数为255,和编码无关

varchar的特点

  1. varchar表示可变长字符串,长度是可变的;
  2. 插入的数据是多长,就按照多长来存储;
  3. varchar在存取方面与char相反,它存取慢,因为长度不固定,但正因如此,不占据多余的空间,是时间换空间的做法;
  4. 对于varchar来说,最多能存放的字符个数为65532

总之,结合性能角度(char更快)和节省磁盘空间角度(varchar更小),具体情况还需具体来设计数据库才是妥当的做法

相关推荐
Elastic 中国社区官方博客4 分钟前
Elasticsearch:Workflows 介绍 - 9.3
大数据·数据库·人工智能·elasticsearch·ai·全文检索
仍然.8 分钟前
MYSQL--- 聚合查询,分组查询和联合查询
数据库
一 乐12 分钟前
校园二手交易|基于springboot + vue校园二手交易系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端
啦啦啦_999914 分钟前
Redis-0-业务逻辑
数据库·redis·缓存
自不量力的A同学1 小时前
Redisson 4.2.0 发布,官方推荐的 Redis 客户端
数据库·redis·缓存
Exquisite.1 小时前
Mysql
数据库·mysql
全栈前端老曹1 小时前
【MongoDB】深入研究副本集与高可用性——Replica Set 架构、故障转移、读写分离
前端·javascript·数据库·mongodb·架构·nosql·副本集
R1nG8631 小时前
CANN资源泄漏检测工具源码深度解读 实战设备内存泄漏排查
数据库·算法·cann
阿钱真强道2 小时前
12 JetLinks MQTT直连设备事件上报实战(继电器场景)
linux·服务器·网络·数据库·网络协议
逍遥德2 小时前
Sring事务详解之02.如何使用编程式事务?
java·服务器·数据库·后端·sql·spring