數(shù)據(jù)庫類型 char int varchar占用幾個字節(jié)?
char int varchar占用幾個字節(jié)?1. 首先,很明顯char的長度是不可變的,而varchar的長度是可變的。也就是說,定義char[10]和varchar[10]。如果保存了“CSDN”
char int varchar占用幾個字節(jié)?
1. 首先,很明顯char的長度是不可變的,而varchar的長度是可變的。也就是說,定義char[10]和varchar[10]。如果保存了“CSDN”,char的長度仍然是10。除字符“CSDN”外,后面還有六個空格。Varchar立即將長度更改為4。在獲取數(shù)據(jù)時,char類型應(yīng)該更改Trim()用于刪除多余的空間,而varchar則不需要。
2. 即便如此,char的訪問次數(shù)也比varchar快得多,因為它的長度是固定的,便于程序的存儲和搜索;但是char也要付出空間的代價,因為它的長度是固定的,所以難免會有多余的空間占位符來占用空間。可以說,空間是時間效率的交換,varchar把空間效率放在首位。
3. 此外,char對于英文字符(ASCII)占用一個字節(jié),對于中文字符占用兩個字節(jié);而varchar對于每個英文字符占用兩個字節(jié),對于中文字符占用兩個字節(jié)。
兩者的存儲數(shù)據(jù)都不是Unicode字符數(shù)據(jù)。
MYSQLINNODB主鍵使用varchar和int的區(qū)別?
字符是固定長度的,查詢時匹配單詞,所以查詢效率很高。R varchar是一個長度可伸縮的字符串,它比char查詢單個字符匹配的速度慢。