char(50)和varchar(50)中的的50代表的是字符数量,char是定长字符串类型,varchar是不定长字符串类型。我们在建表的时候如果使用char的话,那么使用char类型的字符串占用的字节空间是固定的,如果长度不满50个字符,则会默认填充0(二进制)。如果使用的是varchar,则占用的字节数是不固定的。例如:该字段只存放了长度为20的字符串,那么该字段实际占用字节数就是字符串长度的字节数(但是mysql会维护一个字段去保存使用varchar类型的字段的实际长度,若长度小于255,则维护的字段是一个字节,若大于255,则需要两个字节),所以varchar的实际占用字节数=字符串占用字节数+保存字符串占用字节数的字节
MYSQL中var和varchar类型的区别
于 2024-06-25 11:07:05 首次发布