我什么时候应该使用MySQL TEXT字段而不是文件?

时间:2012-06-04 00:57:45

标签: mysql file

使用文件 MySQL TEXT 类型字段上存储一段长文本(比如一篇冗长的博客文章)是否有任何优势?在我看来,我会想象通过你的程序(PHP)检索文件要比为你提取它而麻烦MySQL要快得多。

3 个答案:

答案 0 :(得分:2)

使用“char”和朋友作为短字符串,对于您可能会搜索的“结构化”数据,就像使用数字或日期一样。否则,使用“text”,您希望对大量非结构化文本数据执行全文搜索。喜欢博客;)

这是一篇好文章:

http://devzone.zend.com/26/using-mysql-full-text-searching/

如果您只存储大量文本 - 如果您实际上不想使用mySql 搜索,那么在外部存储文件与存储.mp3音频文件或外部的.png图像。一般来说,我更喜欢在文件系统上存储大的“blob”,而不是在数据库中存储。

... IMHO

=============================================== ====

附录:

如果您有任何疑问 - 我建议将您的博客存储为数据库中的“文本”可能是更好的选择。数据库更好地存储大量小实体(博客条目),并且您可以获得基本上“免费”的全文搜索的额外好处。

IMHO ..

答案 1 :(得分:1)

没有任何优势,如果编码不当会引入慌张。许多cms系统出于某种原因使用数据库,因为它们被设计为比文件更有效地存储和检索这样的数据。如果这是一个更好的主意,Drupal,Joomla,Wordpress等将使用文件而不是数据库。现在,如果你正在讨论图像,那么最好是存储在文件系统上,但即使你写了一个10,000字的博客,你也谈的是最小尺寸。

答案 2 :(得分:1)

我认为无论哪种方式都有优势,这取决于您的具体情况。例如:

使用文本数据库字段意味着您的博客条目全部包含在数据库中,从而使备份和移动变得更加容易。这也意味着您不必担心文件访问,例如安全性,文件锁定,文件名等。此外,您可以在不编写任何特殊代码的情况下查询数据。

使用文件也有好处。它使您的数据库保持较小,特别是在处理大量文件时。它允许其他人,程序或机器轻松访问数据,而无需数据库访问。如果需要重新组织磁盘,可以轻松地将文件传输到其他位置。

所以这完全取决于你的环境。就个人而言,除非你处理大量文件或大文件,否则我可能会坚持使用数据库选项。在大多数情况下处理起来会更容易。