2016-11-13 19 views
0

我有如下表:在MySQL表中存储大量的文本?

Name (Int), Id (Int), Description (VARCHAR) 

我的问题是,说明很可能是文本(超过100个字符)的一个段落。

我Questionsl

1)是VARCHAR合适的数据类型来存储这种类型的数据?

2)MySQL是这个数据的理想存储解决方案,还是我应该看看写入文件?

N.B.我不会查询说明,只是存储数据。

回答

1

MySQL(截至版本5.7)在varchar列中最多支持65,535个字节。请注意,一行的长度(所有列的组合最大大小)也是65,535字节。由于它使用UTF-8,因此存储的字符数可能会少于此限制(因为UTF-8每个字符使用不同数量的字节)。

请注意,在数据库中,100个字符的存储要求并不重要。像这样的数据库系统可以在单行中存储多个千字节,甚至可以将更大的数据(千兆字节及以上大小的单个值)存储在blob列(BLOB,TEXT)中。

如果您不会查询数据,并且数据长度可能超过65KiB,那么您应该使用TEXT数据类型,它将大尺寸值存储在不同的物理存储位置,这使得数据查找有点更昂贵,并阻碍索引。