mysql中char和varchar的区别是什么

青灯夜游
青灯夜游原创
2021-12-02 17:24:4119959浏览

区别:1、char字段的最大长度为255字符,varchar字段的最大长度为65535个字节;2、char类型在空间使用上会有浪费,而varchar类型在空间使用上比较节省;3、char类型的查找效率高,varchar类型的查找效率比较低。

本教程操作环境:windows7系统、mysql8版本、Dell G3电脑。

char和varchar区别

行为char字段varchar字段
最大长度255字符65535个字节,所以括号中最大的字符数还得通过编码来算
是否定长定长,不足的部分用隐藏空格填充不定长
空间使用会有浪费更加节省
查找效率
尾部空格插入时省略插入时不会省略,查找时省略
like查找语句中like后的’ '不会省语句中like后的’ '不会省,字段结尾的空格也不会省

总结

  • char(n)中的n是字符数,范围是0~255(额外需要1到2个字节来存长度)

  • varchar(n)中的n也是字符数,但是最大值需要通过编码来算,不能超过65535字节(从中还需要拿出1到2个字节来存长度)

  • 一般定长的数据选用char类型,比如身份证号,手机号,电话等,长度变化很大的可以使用varchar类型

  • 注意尾部空格的匹配,特别是插入时和使用like查找时

【相关推荐:mysql视频教程

以上就是mysql中char和varchar的区别是什么的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。