1.char的長度是不可變的,而varchar的長度是可變的。
定義乙個char[10]和varchar[10]。
如果存進去的是『csdn』,那麼char所佔的長度依然為10,除了字元『csdn』外,後面跟六個空格,varchar就立馬把長度變為4了,取資料的時候,char型別的要用trim()去掉多餘的空格,而varchar是不需要的。
2.char的訪問數度還是要比varchar要快得多,因為其長度固定,方便程式的儲存與查詢。
char也為此付出的是空間的代價,因為其長度固定,所以難免會有多餘的空格佔位符佔據空間,可謂是以空間換取時間效率。
varchar是以空間效率為首位。
3.char的儲存方式是:對英文本元(ascii)占用1個位元組,對乙個漢字占用兩個位元組。
varchar的儲存方式是:對每個英文本元占用2個位元組,漢字也占用2個位元組。
4.兩者的儲存資料都非unicode的字元資料。
char和varchar2 varchar的區別
char和varchar2 varchar的區別 1 char是長度固定的型別,varchar2是動態變化的,譬如 存在字串 abcde 對於乙個大小為char 20 而言,它將儲存20個字元,但是有15個是空字元,而varchar 20 則是占用3個位元組的長度,20只是能儲存的最大值。2 cha...
char和varchar的區別
char char是定長的,也就是當你輸入的字元小於你指定的數目時,char 8 你輸入的字元小於8時,它會再後面補空值。當你輸入的字元大於指定的數時,它會擷取超出的字元。nvarchar n 包含 n 個字元的可變長度 unicode 字元資料。n 的值必須介於 1 與 4,000 之間。位元組的...
char 和 varchar的區別
varchar 儲存了可變長度的字串,是使用較多的字串型別。它比固定長度型別占用更少的儲存空間,因為它只占用了實際需要空間,比較靈活。但如果設定了row format fixed建立的myisam引擎表,那麼每行占用固定長的空間,就會造成浪費。varchar使用額外的1到2位元組來儲存值得長度。如果...