char()和VARCHAR()的主要區別是什么?


1、char的長度是不可變的,而varchar的長度是可變的

字段b:類型char(10),     值為:abc,存儲為:abc             (abc+7個空格)

字段d:類型varchar(10), 值為:abc,存儲為:abc (自動變為3個的長度)

 

2、超出長度自動截取

字段c:類型char(3),     值為:abcdefg,存儲為:abc(defg自動刪除)

字段e:類型varchar(3), 值為:abcdefg,存儲為:abc (defg自動刪除)

 

3、var(10)和char(10),都表示可存10個字符,無論存放的是數字、字母還是UTF8漢字(每個漢字3字節),都可以存放10個

 

4、char最多可以存放255個字符

  varchar的最大長度為65535個字節,varchar可存放的字符數跟編碼有關

  字符類型若為gbk,每個字符最多占2個字節,最大長度不能超過32766個字符

  字符類型若為utf8,每個字符最多占3個字節,最大長度不能超過21845個字符

 

5、char和varchar的最大長度限制是mysql規定的

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM