一个是固定大小的 一个是可变大小 当然最大长度是一样的
VARCHAR和TEXT之间的一些区别
两种数据类型共享的最大长度为65,535个字符,但仍然存在一些差异:
- VARCHAR中的VAR表示您可以将最大大小设置为1到65,535之间的任何值。 TEXT字段的最大固定大小为65,535个字符。
- VARCHAR可以是索引的一部分,而TEXT字段要求您指定前缀长度,该长度可以是索引的一部分。
- VARCHAR与表内联存储(至少对于MyISAM存储引擎而言),因此在大小合理时可能会更快。当然,快得多少取决于您的数据和硬件。同时,TEXT存储在表外,该表具有指向实际存储位置的指针。
- 排序使用TEXT列将需要使用基于磁盘的临时表作为MEMORY(HEAP)存储引擎。
TEXT类型
如果您需要TEXT类型,请知道实际上有三种口味;除了TEXT,还有MEDIUMTEXT或LONGTEXT变体。后两个用于存储长度超过65,535个字符的文本内容。 MEDIUMTEXT最多可存储16 MB的字符串,而LONGTEXT最多可存储4 GB的字符串!不用说,除非您有大量的存储空间,否则应避免使用这些较大的类型。
参考文章:
在 MySQL 中的 VARCHAR 和 TEXT 之间的选择