如何存储大字符串节省空白空间

时间:2013-01-10 12:02:22

标签: mysql

我正在尝试将一些xml保存到我的mysql数据库中。但是这些xml块可以在1000到1000000个字符之间变化。如何在不为每个字符串保留100kb的情况下将其保存到我的数据库中,即使它只有1kb长?

编辑:

我查了http://dev.mysql.com/doc/refman/5.1/en/storage-requirements.html 他们说,Text存储在2000个字符的块中。有趣的是,将MEDIUMTEXT更改为LONGTEXT会将22kb更改为100kb。文本大小是相同的,所以它应该保持在大约4000b(4kb)

你知道为什么会发生这种情况以及如何预防吗?

1 个答案:

答案 0 :(得分:2)

MySQL的可变长度字符串类型仅分配存储数据所需的空间(及其长度)。在您的情况下,您需要MEDIUMTEXT类型才能存储最多1000000个字符。