MySQL中TEXT、TINYTEXT、MEDIUMTEXT、LONGTEXT選擇


儲存不區分大小寫的字符數據

TINYTEXT 最大長度是 255 (2^8 – 1) 個字符。
TEXT 最大長度是 65535 (2^16 – 1) 個字符。
MEDIUMTEXT 最大長度是 16777215 (2^24 – 1) 個字符。
LONGTEXT 最大長度是 4294967295 (2^32 – 1) 個字符。

 

很早就了解MySQL5中的varchar字段可以大於255個字節,
仔細讀了一下MySQL5的文檔,其中對varchar字段類型描述:varchar(m) 變長字符串。
M 表示最大列長度。M的范圍是0到65,535。
(VARCHAR的最大實際長度由最長的行的大小和使用的字符集確定,最大有效長度是65,532字節)。MySQL 5.1遵從標准SQL規范,並且不刪除VARCHAR值的尾部空格。

VARCHAR保存時用一個字節或兩個字節長的前綴+數據。
如果VARCHAR列聲明的長度大於255,長度前綴是兩個字節。注:測試了一下使用UTF8編碼,varchar的最大長度為21854字節。

首先longtext的最大長度為4GB, varchar與text的用法區別(最大長度65535-3 vs  65535):

1. varchar有系統默認長度,所以必須在括號里定義長度,可以有默認值。
2. text不能有默認值,存儲或檢索過程中,不存在大小寫轉換。
3. 經常變化的字段用varchar,能用varchar的地方不用text(效率上: char>varchar>text)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM