| 特性 | CHAR | VARCHAR | TEXT |
|---|---|---|---|
| 長度特性 | 固定長度 (0-255) | 可變長度 (0-65,535) | 4 種:TINY/TEXT/MEDIUM/LONG (255B-4GB) |
| 存儲方式 | 右側填充空格至定長 | 1-2 字節長度前綴 + 實際數據 | 對象指針,溢出頁存儲 |
| 尾部空格 | 讀取時自動去除 | 保留(5.0.3+) | 保留 |
| 大小寫轉換 | 不轉換 | 不轉換 | 不轉換 |
| 默認值 | 支持 | 支持 | 不支持 |
| 索引前綴 | 可選 | 可選 | 必須指定 |
| 排序比較 | 按字節/校對規則 | 按字節/校對規則 | 按校對規則 |
| 內存處理 | 內聯存儲 | 內聯存儲 | 單獨對象,可能產生臨時表 |
max_sort_length(默認 1024 字節),查詢易產生磁盤臨時表ORDER BY text_col 只比對前 1024 字節,需 ORDER BY SUBSTRING(text_col,1,2000)COMPACT/REDUNDANT:前 768 字節內聯DYNAMIC/COMPRESSED:全溢出頁,僅存 20 字節指針,適合大 TEXT/BLOBCHARVARCHAR(合理長度)TEXT + 前綴索引 INDEX idx_content (content(100))SELECT * 查詢含 TEXT 表,顯式列出所需列