mysql的varchar定義長度到底是位元組還是字元

時間 2021-12-18 21:58:17

1樓:biubiu哩

字元。varchar儲存規則:

4.0版本以下,varchar(20),指的是20位元組,如果存放utf8漢字時,只能存6個(每個漢字3位元組)

5.0版本以上,varchar(20),指的是20字元,無論存放的是數字、字母還是utf8漢字(每個漢字3位元組),都可以存放20個,最大大小是65532位元組

mysql4中最大也不過是20個位元組,但是mysql5根據編碼不同,儲存大小也不同。

2樓:千鋒教育

mysql的varchar定義長度到底是位元組varchar儲存規則:

4.0版本以下,varchar(20),指的是20位元組,如果存放utf8漢字時,只能存6個(每個漢字3位元組)

5.0版本以上,varchar(20),指的是20字元,無論存放的是數字、字母還是utf8漢字(每個漢字3位元組),都可以存放20個,最大大小是65532位元組

mysql4中最大也不過是20個位元組,但是mysql5根據編碼不同,儲存大小也不同。

3樓:匿名使用者

varchar 是位元組

nvarchar 是字元

4樓:匿名使用者

最新的都是5.x和8.x了,宣告時指的都是最多存多少個字元;但底層儲存要變為位元組,所以最大長度是65535位元組。

資料庫中varchar的長度與位元組,字串的關係

5樓:亞式孩子氣

長度理解為2個位元組,漢字和字母在mysql裡長度是不一樣的,varchar(2)儲存的是兩個位元組。特別提醒一下,如果知道欄位的長度,建議用char型別優化速度,如性別字段,直接使用char,不要用varchar。

varchar(m)是一種比char更加靈活的資料型別,同樣用於表示字元資料,但是varchar可以儲存可變長度的字串。其中m代表該資料型別所允許儲存的字串的最大長度,只要長度小於該最大值的字串都可以被儲存在該資料型別中。因此,對於那些難以估計確切長度的資料物件來說,使用varchar資料型別更加明智。

varchar型字段的另乙個突出的好處是它可以比char型字段占用更少的記憶體和硬碟空間。當你的資料庫很大時,這種記憶體和磁碟空間的節省會變得非常重要.雖然varchar使用起來較為靈活,但是從整個系統的效能角度來說,char資料型別的處理速度更快,有時甚至可以超出varchar處理速度的50%。

假如你向乙個長度為四十個字元的varchar型字段中輸入資料bill gates。當你以後從這個欄位中取出此資料時,你取出的資料其長度為十個字元——字串bill gates的長度。 假如你把字串輸入乙個長度為四十個字元的char型字段中,那麼當你取出資料時,所取出的資料長度將是四十個字元。

字串的後面會被附加多餘的空格。

mysql 字段型別 varchar 的長度??

varchar資料型別所支援的最大長度也是255個字元。1個漢字字元儲存需要2個位元組,即255 2 127 1個英文本元儲存需要1個位元組,即255 其實要看編碼的。utf8以可變位元組數 1 3位元組 來儲存每個字元char 10 就是30位元組。varchar 10 就是10 30位元組。my...

mysql怎麼定義變數,mysql中如何定義變數

下面是乙個簡單的 儲存過程的例子.declare v index int 定義乙個 名稱為 v index 的變數,型別為 intmysql 變數定義應該只能在 儲存過程,函式裡面定義.不像 oracle sql server 乙個 begin end 裡面就可以定義 執行了。mysql delim...

請教如何檢視mysql資料定義操作的日誌

請參照以下步驟檢視sql資料庫操作日誌。1 首先在電腦上開啟sql server軟體,進入軟體載入介面。2 在彈出的連線到伺服器視窗中選擇相應的資訊,登入到sql server伺服器。3 登入成功後,將 管理 資料夾,即可看到 sql server 日誌 資料夾。4 將 sql server 日誌 ...

怎樣檢視mysql自定義資料庫的編碼字符集

在mysql的安裝目錄下的檔案my.ini中的 default character set latin1 1.ascii 用途 用來對映簡單的單位元組字元,比如大小寫英文本母 阿拉伯數字 常用的標點符 運算子 控制字元等。編碼範圍 u 0000 u 007f 注意 對於用這類字元的場景夠用了,但是卻...

關於mysql 的儲存過程,mysql中的儲存過程是什麼意思啊

修改結束符 delimiter create procedure.end delimiter 簡易用sqlyog,寫過程蠻好用的 mysql中的儲存過程是什麼意思啊 直白的講就是把sql語句進行封裝,然後留個介面,使用的時候直接呼叫介面。可以把對資料的各種處理寫在儲存過程裡 程式只需呼叫 或者 傳參...