首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >text还是varchar?

问text还是varchar?
EN

Stack Overflow用户
提问于 2009-11-01 07:13:12
回答 4查看 1.1K关注 0票数 4

我有两列包含文本的列,一列最多150个字符,另一列最多700个字符。

我的问题是,我应该对这两种varchar类型都使用,还是应该对700个字符的长列使用text?为什么?

谢谢,

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2009-11-01 07:17:07

MySQL < 5.0.3中的varchar数据类型不能包含超过255个字符的数据。而在MySQL >= 5.0.3中,它最多包含65,535个字符。

因此,这取决于您的目标平台,以及您的部署要求。如果要确保其适用于低于5.0.3的MySQL版本,请为longer列使用text类型数据字段

票数 10
EN

Stack Overflow用户

发布于 2009-11-02 05:41:38

一个重要的注意事项是,对于varchar,数据库将数据直接存储在表中,而对于文本,数据库将指针存储到存储数据的单独的表空间中。因此,除非遇到行长度的限制(在MySQL中为64K,在DB2中为4-32K,在SQL Server2000中为8K ),否则我通常会使用varchar。

票数 2
EN

Stack Overflow用户

发布于 2009-11-01 07:17:51

我不太确定mysql,但在MS SQL中,如果您想对字段中的值运行任何类型的比较,您肯定应该对长度低于8000个字符的任何内容使用VARCHAR。例如,可以使用VARCHAR:

代码语言:javascript
复制
select your_column from your_table 
where your_column like '%dogs%'

但不是使用文本字段。

有关MySQL5.4中文本域的更多信息可以在here中找到,有关VARCHAR域的更多信息可以在VARCHAR域中找到。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1655882

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档