今天在設計表的時候,遇到個小問題,由於不知道未來將要儲存的資料有多長(資料是通過第三方http介面提供的,根據sample顯示,資料大概是如下:)
也就是6個字元。
我在設計表的時候,有點猶豫,本來準備設計為varchar(6),但擔心是按位元組計算的,會導致存不下。(資料庫採用utf8編碼)
於是自己試了下,
可以存放5個utf8字元。看來mysql的varchar是按照字元來計算的。
然後也查閱了一下網上的答案:
也就是version4之前,按位元組;
version5之後,按字元。
MySql中varchar和varchar的區別
看了新公司的資料庫設計,有些問題思考了一下,寫這篇文章也就記錄這個問題的思考過程。首先從占用空間進行比較,varchar 10 宣告10個位元組,資料儲存時額外乙個位元組的長度字首 varchar 1000 宣告1000個位元組,如果資料長度大於255,長度字首是兩個位元組。而實際varchar資料...
mysql中char與varchar的區別
char是一種固定長度的型別,varchar則是一種可變長度的型別 char m 型別的資料列裡,每個值都占用m個位元組,如果某 個長度小於m,mysql就會在它的右邊用空格字元補足 在檢索操作中那些填補出來的空格字元將被去掉 在varchar m 型別的資料列裡,每個值 只占用剛好夠用的位元組再加...
mysql中char與varchar的區別分析
在mysql教程中char與varchar的區別呢,都是用來儲存字串的,只是他們的儲存方式不一樣罷了,char有固定的長度,而varchar屬於可變長的字元型別。char與varchar的區別 char 13 長度固定,如 www.jb51.net 儲存需要空間 12個字元 varchar 13 可...