回覆列表
  • 1 # 等雨傘的人

    區別如下:

    首先明確的是,char的長度是不可變的,而varchar的長度是可變的,

    定義一個char[10]和varchar[10],如果存進去的是‘abcd’,那麼char所佔的長度依然為10,除了字元‘abcd’外,後面跟六個空格,而varchar就立馬把長度變為4了,取資料的時候,char型別的要用trim()去掉多餘的空格,而varchar是不需要的,

    char的存取數度還是要比varchar要快得多,因為其長度固定,方便程式的儲存與查詢;但是char也為此付出的是空間的代價,因為其長度固定,所以難免會有多餘的空格佔位符佔據空間,可謂是以空間換取時間效率,而varchar是以空間效率為首位的。

    char的儲存方式是,對英文字元(ASCII)佔用1個位元組,對一個漢字佔用兩個位元組;而varchar的儲存方式是,對每個英文字元佔用2個位元組,漢字也佔用2個位元組,兩者的儲存資料都非unicode的字元資料。

  • 2 # hhh哈哈哈哈哈

    1. char的儲存方式是,對英文字元(ASCII)佔用1個位元組,對一個漢字佔用兩個位元組;而varchar的儲存方式是,對每個英文字元佔用2個位元組,漢字也佔用2個位元組,兩者的儲存資料都非unicode的字元資料。

    2. 首先明確的是,char的長度是不可變的,而varchar的長度是可變的,

    3. 定義一個char[10]和varchar[10],如果存進去的是‘abcd’,那麼char所佔的長度依然為10,除了字元‘abcd’外,後面跟六個空格,而varchar就立馬把長度變為4了,取資料的時候,char型別的要用trim()去掉多餘的空格,而varchar是不需要的,

    4. char的存取數度還是要比varchar要快得多,因為其長度固定,方便程式的儲存與查詢;但是char也為此付出的是空間的代價,因為其長度固定,所以難免會有多餘的空格佔位符佔據空間,可謂是以空間換取時間效率,而varchar是以空間效率為首位的。

  • 中秋節和大豐收的關聯?
  • 爸媽離婚後,我歸我媽管,我媽總是想著拿我約我爸出來跟她見面,他們能敘舊,我該怎麼辦?