什么应该是mysql表列的数据类型,用于存储注释

时间:2012-10-07 15:41:44

标签: mysql file-io blob

我正在开发一个存储用户创建的笔记的Web应用程序。我对在文件系统中将笔记存储为单独文件还是使用数据库列保存文本感到困惑。

如果mysql是更好的解决方案,那么我应该使用什么数据类型(内容可以是简单的文本还是html)?

2 个答案:

答案 0 :(得分:1)

如果您需要速度,可以使用MySQL。您需要使用BLOB或如果它只是文本,请使用TEXT作为数据类型。使用一个好的数据库引擎(MySQL,SQLite等)。然后,为了获得最佳性能,请使用memcached缓存内容。

请记住以下几点:

  1. MySQL有一个查询缓存。如果重复发出相同的查询,则无需添加缓存层即可获得大量性能。
  2. 无论如何,MySQL真的很快。您是否经过了负载测试以证明它不够快?
  3. 另一件事是,很难搜索平面文件。如果你使用MySQL,不仅它更快,而且你更容易搜索。

答案 1 :(得分:1)

您可以做的是创建一个包含以下字段的mysql表: ID(INT),CreationDate(DATETIME),内容(TEXT)

如果你想存储简单的文字或html,这一切都取决于你的需求(用户是否能够在他的笔记上放一个特殊的字体?一种特殊的颜色?),但不要忘记逃避文本正确。

从那时起,您可以轻松地通过其ID来检索用户的笔记,并且还可以根据创建/修改日期轻松对其进行排序。使用SQL数据库可以提供很大的灵活性。