我正在为我的部落网站制作一个小论坛。我想知道是否应该将线程文本存储在 TEXT 或 BLOB 中?有什么不同?我已经看到 phpBB 做到了。
到底什么是 BLOB?在谷歌上找不到太多关于它的信息。
一个 blob 只是一堆字节。任意数量的字节,仅此而已。
如果要将文本存储为 blob,则必须担心编码(将文本转换为字节的过程)。但是,如果您将内容存储为文本,则无论您使用何种数据库传输方式,都将确保存储在数据库中的文本被正确编码和解码,以实现高效存储和易于使用。
如果您打算存储文本,则应存储文本。
phpBB 可以自己实现文本编码和解码,这可能是使用 blob 代替文本的原因之一。这不太可能,但有时文本数据类型具有最大长度,在这种特定情况下,blob 可能是 phpBB 的一种解决方法。
BLOB 用于二进制数据。我不知道 phpBB 3 以二进制形式存储所有内容的原因,但我自己已经注意到了。我的猜测是他们正在压缩/编码他们放入数据库的任何内容。您可以尝试查看 phpBB 源代码,看看是否有任何注释解释它。