在MySQL中char最大值为~255。
char的长度是固定的,
若char(100)中只储存20个字节,那么就有80个字节被转化为空格并不会显示。
而varchar的长度是可变的,取值为0~65535之间的任意值。
若varchar(100)中最大长度是100但不是要记录100个字节而是在这个范围内用多少就分配多少,但实际占用的长度需加1或2.
创建数据库并正常插入数据:
char类型会屏蔽后边隐藏的空格 而varchar 并不会
这样看是不是感觉一样的,感觉没什么用啊,不着急,看下图让他原形毕露:
char 空格被屏蔽,而varchar还在
若char和varchar用空格超出指定的字节
char:
char若是用空格超出则屏蔽
varchar:
varchar则把超出的空格数据截断
/若要用varchar(100)来保存100个中文字符,则占取字节为200/
提醒:若字符串尾部要保留空格,必须选择varchar。