Rumah > Artikel > pangkalan data > mysql中char和varchar数据类型的区别是什么
mysql中char和varchar数据类型的区别是:varchar类型用于存储可变长的字符串,char类型用于存储定长的字符串。varchar适用于字符串列的最大长度比平均长度大的情况,char适用于列的长度为定值的情况。
(推荐教程:mysql教程)
mysql中char和varchar数据类型的区别是:
varchar类型用于存储可变长的字符串,是比较常见常用的字符串数据类型。
在存储的字符串是变长时,varchar更加节约空间。由于varchar是变长的,在使用update的时候,可能使得行变得比原来更长,这就导致需要做额外的工作。
如果一个行占用的空间增加,并且在页内没有多余的空间可与存储,这是innoDB的存储引擎需要分裂页来使行可以放进页内。
char类型用于存储定长的字符串。
在存储数据时,MySQL会删除所有文末的空格,所以,即便你存储的是:'abc ',注意这个字符串末尾是有空格的,也会在存储时把这个空格删掉。
我们来看一下使用场景:
varchar适用的场景:
字符串列的最大长度比平均长度要大很多;
字符串列的更新很少时,因为没有或很少有内存碎片问题;
使用了UTF-8这样复杂的字符集,每个字符都使用不同的字节数进行存储;
char适用的场景:
列的长度为定值时适合适用,比如:MD5密文数据。
Atas ialah kandungan terperinci mysql中char和varchar数据类型的区别是什么. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!