zl程序教程

您现在的位置是:首页 >  数据库

当前栏目

MySQL 中 varchar 和 char 区别

2023-02-18 16:31:34 时间

1. varchar 和 char 共同点


varchar 和 char 是 MySQL 中的两种数据类型,都是用来存储字符串的。

2. varchar 和 char 区别


一、长度是否可变

varchar 类型的长度是可变的,而 char 类型的长度是固定的

char 类型是一个定长的字段,以 char(10) 为例,不管真实的存储内容多大或者是占了多少空间,都会消耗掉 10 个字符的空间

坦通俗来讲,当定义为 char(10) 时,即使插入的内容是 'abc' 3 个字符,它依然会占用 10 个字节,其中包含了 7 个空字节

二、存储长度

char 长度最大为 255 个字符,varchar 长度最大为 65535 个字符

三、检索效率方面

varchar 类型的查找效率比较低,而 char 类型的查找效率比较高

3. varchar 和 char 的选择


存储的字符长度是可变化的,建议使用 varchar 类型,它可以节省存储空间。varchar 最常见的使用场景有: 昵称,地址

存储的字符串的长度是固定不变的,建议使用 char 类型,这种场景下选用它的不会浪费存储空间,效率还比较高。使用场景:使用 md5 加密的密码长度固定为 32 位字符

总结: 可变长度使用 varchar,固定长度使用 char