mysql5.0.3以后,n都表示字符数(varchar(n))

  • 检索效率 char > varchar > text
  • 当varchar长度超过255之后,跟text一致,但是设置varchar(n)的话,可以防止恶意使用text撑爆数据库
类型名称 说明 存储需求
CHAR < M 固定长度非二进制字符串 M字节,1 <= M <= 255
VARCHAR(M) 变长非二进制字符串 L + 1字节,在此,L <= M和1 <= M <= 255
VARCHAR(M) 变长非二进制字符串 L + 2字节,在此,L <= M和255 < M <= 65535
TEXT 小的非二进制字符串 L + 2字节,在此L < 2^16

char

  • 查询速度:char最快
  • 最大长度:255个字符,utf-8编码的话,占用255 * 3个字节
  • 占用空间:n
  • 其他:
  1. 在获取数据出来之后,一定要记得trim空格,因为不足char(n)的长度,会自动填充空格
  2. 因为定长的char不容易产生碎片,所以char比varchar在空间上也更有效率

varchar

  • 查询速度:varchar次之
  • 最大长度:65535个字节
  • 占用空间:实际空间 + 1,会使用1-3个字节来存储长度,如果整体长度在0-255bytes之间,长度使用1个字节表示,如果长度在255以上,那么就是2个字节,varchar(10)需要11个存储空间,varchar(1001)需要1002个存储空间
  • 其他
  1. 官方手册定义的varchar最大长度65535指的是所有varchar列长的总和

text

  • 查询速度:text最慢
  • 最大长度:跟varchar基本相同,保存65535个字符
  • 占用空间:存储2个字节长度

最新文章

  1. redhat7 修改hostname
  2. [转]ExtJs:xtype的含义
  3. IOS开发之异步加载网络图片并缓存本地实现瀑布流(二)
  4. 讨论贴:在sp_executesql 中生成的临时表的可见性
  5. PHP性能优化简述
  6. $(document).ready vs $(window).load vs window.onload
  7. python 练习 14
  8. asp.net下通过泛解析和伪静态实现二级域名的实现方法
  9. AWS Python SDK boto3中的基本概念与使用方法
  10. [转]Oracle EBS APIs
  11. MVC - 身份验证
  12. struts.xml文件示范
  13. c# 的导入功能SqlBulkCopy
  14. 自己寫的 Loading JS插件
  15. (转)iPhone 判断UITableView 滚动到底部
  16. [C#]使用Redis来存储键值对(Key-Value Pair)
  17. [LeetCode] Find Anagram Mappings 寻找异构映射
  18. Java多线程面试
  19. gitlab服务器搭建
  20. CANVAS笔记

热门文章

  1. LiteFlow 2.6.4版本发行注记,里程碑版本!
  2. python微服务
  3. Python知识整理(二)
  4. Mac Python相关配置操作汇总
  5. 在linux 环境下 安装php
  6. Import “google/api/annotations.proto“ was not found or had errors.问题;proto 中外部引入proto文件问题解决方案
  7. NOIP模拟99(多校31)
  8. [源码解析] PyTorch分布式(5) ------ DistributedDataParallel 总述&amp;如何使用
  9. Hadoop HA集群 与 开发环境部署
  10. ICCV2021 | Vision Transformer中相对位置编码的反思与改进