char與varchar的區別?

2021-08-27 15:02:23 字數 376 閱讀 1973

1、char(m)。m代表可儲存的字元數,char儲存定長資料很方便,char欄位上的索引效率級高,比如定義char(10),那麼不論你儲存的資料是否達到了10個字元,都要占去10個字元的空間。

2、varchar(n)。n代表可儲存的位元組數,儲存變長資料,但儲存效率沒有char高。如果乙個字段可能的值是不固定長度的,我們只知道它不可能超過10個位元組,把它定義為 varchar(10)是最合算的。varchar型別的實際長度是它的值的實際長度+(1-2)個位元組。為什麼+(1-2)呢?這1~2個位元組用於儲存實際使用了多大的長度。

因此,0=

從空間上考慮,用varchar合適;從效率上考慮,用char合適,關鍵是根據實際情況找到權衡點。

Varchar與char的區別

char 對英文 ascii 字元占用1個位元組,對乙個漢字占用2個位元組 varchar 的型別不以空格填滿,比如varchar 100 但它的值只是 qian 則它的值就是 qian 而char 不一樣,比如char 100 它的值是 qian 而實際上它在資料庫中是 qian qian後共有9...

varchar與char 的區別

char是一種固定長度的型別,varchar則是一種可變長度的型別,它們的區別是 char m 型別的資料列裡,每個值都占用m個位元組,如果某個長度小於m,mysql就會在它的右邊用空格字元補足 在檢索操作中那些填補出來的空格字元將被去掉 在varchar m 型別的資料列裡,每個值只占用剛好夠用的...

CHAR 與 VARCHAR的區別

為什麼要談char與varchar?大家可能想char和varchar這種東西再簡單不過了,只不過是mysql中最基本的資料型別,有什麼好深究的。其實有時候越簡單 越基礎的東西越複雜,越難以捉摸。大家在使用mysql建立資料表時都會遇到這樣的問題,如何為字段選擇合適的資料型別,熟悉這些基本資料型別將...