首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Mysql文本存储?

Mysql文本存储?
EN

Stack Overflow用户
提问于 2009-11-15 06:05:37
回答 3查看 2.2K关注 0票数 0

我想知道,如果你在哪里有一篇或多篇包含大量文本的文章,在为文章文本创建数据库结构时,什么会更好?为什么?

如果有的话,有什么好处或坏处呢?

我正在考虑使用下面的一种数据类型来保存MySQL数据库的文章文本。

代码语言:javascript
复制
VARCHAR
TEXT
MEDIUMTEXT
LONGTEXT
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-11-15 06:22:24

请看一下Documentation of MySQL,这里解释了这些类型之间的区别。

但是为了回答您的问题,VARCHAR是一个用户定义长度的字段,而Text- field具有系统定义的大小:

  • VarChar 1-任意(最大65535)
  • TinyText 255 (2^8 - 1)
  • Text 65535 (2^16 - 1)
  • MediumText 16M (2^24 - 1)
  • LongText 4G (2^32 - 1)

因此,每当我需要一个小于255的字段时,我就使用VarChar。

票数 6
EN

Stack Overflow用户

发布于 2009-11-15 06:23:14

对于较长的文本块,文本是一个很好的选择。如果需要全文搜索功能,请确保在字段上设置全文索引。这将需要一个MyISAM格式的表。你可以在这里阅读更多内容:http://dev.mysql.com/doc/refman/5.1/en/fulltext-search.html

票数 1
EN

Stack Overflow用户

发布于 2011-10-20 18:00:07

VARCHAR和文本字段之间的一个重要区别是它们的存储方式。VARCHAR字段存储在其自身的行中,因此适用于MySQL的最大行大小限制65,535字节。文本字段是单独存储的,因此它们可能会很大,但这也意味着在读取它们时需要额外的步骤,这会使它们变得更慢。

我的建议是始终对少量文本使用VARCHAR,并在需要存储大量文本时保留文本。

如果您确实使用文本字段,请确保将它们排除在SELECT查询之外,除非您需要它们,因为这将使查询速度更快。

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

https://stackoverflow.com/questions/1735764

复制
相关文章

相似问题

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