在MySQL数据库中存储文章的字段/数据类型
我不得不相信这个话题已经被写了一遍又一遍,但是我很难找到任何好的、可靠的信息 我应该使用什么数据类型来存储200到400个单词的文本?那么那些可能接近二三千字的长文章呢 哪些选项会影响我的决定?我不打算搜索这些数据,但我不能完全排除以后可能会这样做的可能性在MySQL数据库中存储文章的字段/数据类型,mysql,database-design,varchar,Mysql,Database Design,Varchar,我不得不相信这个话题已经被写了一遍又一遍,但是我很难找到任何好的、可靠的信息 我应该使用什么数据类型来存储200到400个单词的文本?那么那些可能接近二三千字的长文章呢 哪些选项会影响我的决定?我不打算搜索这些数据,但我不能完全排除以后可能会这样做的可能性 不幸的是,我的背景是MS Access,其中唯一的选项是备注字段。MySQL看起来并不是那么简单。一个文本字段应该足够大,可以存储大多数文章。似乎相当于Access的备忘录类型。它最多可以容纳65535个字符,大概在……我不知道……平均10-
不幸的是,我的背景是MS Access,其中唯一的选项是备注字段。MySQL看起来并不是那么简单。一个
文本
字段应该足够大,可以存储大多数文章。似乎相当于Access的备忘录类型。它最多可以容纳65535个字符,大概在……我不知道……平均10-12000个单词?文本数据类型对于您的情况来说是一种安全的选择,VARCHAR
通常在需要索引或需要存储明确定义的值(IP地址、邮政编码等)时使用.如果您使用的是MySQL 5.0.3或更高版本,请转到。它可以容纳65k字节。只要每行只有1个long VARCHAR,就可以了
否则,请使用文本
从mysql手册:
BLOB和TEXT与VARBINARY不同
和VARCHAR的方法如下:
没有删除的尾随空间
设置值时的BLOB和文本列
存储或检索。MySQL之前
5.0.3,这与VARBINARY和VARCHAR不同,后者的尾随空格为
存储值时删除
在比较中,文本是空间扩展的
精确地拟合比较对象
比如CHAR和VARCHAR
对于BLOB和文本列上的索引,
必须指定索引前缀
长度。对于CHAR和VARCHAR,前缀
长度是可选的。见第7.5.1节,
“列索引”
BLOB和TEXT列不能具有
默认值
也很高兴知道(来自):
中BLOB或文本列的实例
查询的结果是
使用临时表进行处理
使服务器在上使用表
磁盘而不是内存中,因为
内存存储引擎不支持
这些数据类型
在制定使用文本的查询时,您确实应该考虑到这一点。就我所知,在您发布的内容中,对我来说唯一重要的是您上次提到的内存问题。我想我会选择varchar,因为每行只有一个这样的字段。