mysql 選擇什麼樣的 string 型別

2021-07-10 16:39:29 字數 786 閱讀 7465

關於 char,varchar 與 text 平時沒有太在意,一般來說,可能現在大家都是用 varchar。

但是當要儲存的內容比較大時,究竟是選擇 varchar 還是 text 呢?不知道。。。。。。於是去查閱了一些資料,順便將這三種型別做個比較:

(1)char: char 不用多說了,它是定長格式的,但是長度範圍是 0~255. 當你想要儲存乙個長度不足 255 的字元時,mysql 會用空格來填充剩下的字元。因此在讀取資料時,char型別的資料要進行處理,把後面的空格去除。

(2)varchar: 關於 varchar,有的說最大長度是 255,也有的說是 65535,查閱很多資料後發現是這的:varchar 型別在 5.0.3 以下的版本中的最大長度限制為 255,而在 5.0.3及以上的版本中,varchar 資料型別的長度支援了 65535,也就是說可以存放 65532 個位元組(注意是位元組而不是字元!!!)的資料(起始位和結束位占去了 3 個位元組),也就是說,在 5.0.3 以下版本中需要使用固定的 text 或 blob 格式存放的資料可以在高版本中使用可變長的 varchar 來存放,這樣就能有效的減少資料庫檔案的大小。

(3)text:與 char 和 varchar 不同的是,text 不可以有預設值,其最大長度是 2 的 16 次方-1

總結起來,有幾點:

1.經常變化的字段用 varchar

2. 知道固定長度的用 char

3. 盡量用 varchar

4. 超過 255 字元的只能用 varchar 或者 text

5. 能用 varchar 的地方不用 text

選擇了什麼樣的工作就選擇了什麼樣的生活方式

在我最近做的乙個職業生涯規劃案例裡有位叫蘇華的31歲女性技術經理 曾做過程式設計師 談到 讓我覺得痛苦是從上大學開始的,我是95年上的大學,那個時候計算機專業非常紅火,但我在上大學之前,從來沒見過計算機是什麼東西。在報考專業時,以我當時的年齡和生活閱歷,我根本無從選擇,父母和老師都說計算機專業吃香,...

什麼樣的教育就有什麼樣孩子!

寵出來的孩子 危險 捧出來的孩子 霸道 慣出來的孩子 任性 嬌出來的孩子 脆弱 打出來的孩子 逆反 罵出來的孩子 胡塗 逼出來的孩子 出格 磨出來的孩子 堅強 苦出來的孩子 懂事 教出來的孩子 傳統 闖出來的孩子 勇敢 搏出來的孩子 成功 表揚出的孩子 自信 溺愛出的孩子 依賴 哄出來的孩子 虛偽 ...

選擇什麼樣的免費郵箱?

網上上關於免費郵箱的討論很多,集中在選擇什麼樣的郵箱,以及那個郵箱更好。免費送的東西還有這麼多選擇,競爭還這麼激烈,這確實是網際網路上才有的獨特的風景線,對於廣大網際網路使用者這是多大一件好事。但是面對如此豐盛的免費大餐,我們該如何選擇呢?這裡提供乙個非常簡單的選擇標準。所謂的選擇其實就是選擇乙個自...