Mysql數據庫中varchar類型和char類型的區別

varchar
1、使用比固定長度類型(char)佔用更少存儲空間(除了使用ROW_FORMAT=FIXED創建的MyISAM表)
2、使用額外的1-2字節來存儲值長度,列長度<=255使用1字節保存,其它情況使用2字節保存。例如varchar(10)會佔用11字節存儲空間,varchar(500)會佔用502字節存儲空間
3、節約空間,所以性能會有幫助。在更新的時候會產生額外的工作。
4、5.0以上版本,取值或設置值都會保存字符串末尾的空格,4.1之前的版本都會把字符串末尾的空格刪除掉
5、最大長度遠大於平均長度,很少發生更新的時候適合使用varchar,因爲碎片更少了

char
1、使用固定長度
2、保存的時候會去掉字符串末尾的空格
3、適合保存MD5後的哈希值或經常改變的值,因爲固定的行不容易產生碎片


char去掉字符串末尾的空格示例:

varchar去掉字符串末尾的空格示例:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章