什么数据类型最适合在SQL数据库中存储文章?

时间:2012-02-09 14:38:41

标签: php mysql sql

我正在为我的网站创建一个自定义CMS,我将在mysql数据库中存储文章(每篇文章的文本和图像)。什么数据类型最适合该任务?

6 个答案:

答案 0 :(得分:5)

您不应尝试将文本和图像存储在单个字段中,在这种情况下,您可能根本不应将图像存储在数据库中。

最好的解决方案是在你的文章中使用某种标记系统 - 最简单的可能是html的过滤子集 - 在数据库中以纯文本形式存储,然后在浏览器中解析办法。显然,如果您使用过滤后的html,则不需要编写任何特殊代码来解析它,但采用这种方法确实会引发可能的安全问题。

其他调查选项包括Markdown(本网站使用的系统)以及BBCode(主要由在线论坛使用),以及许多其他选项。

总结 - 不要将图像和文本存储在一个字段中。存储文本,并根据需要解释该文本以在文章中加载图像和其他媒体。

答案 1 :(得分:1)

将图像保存为VARCHAR,但仅保存图像名称(和/或位置,具体取决于您的cms的大小),将文本另存为 - TEXT

答案 2 :(得分:1)

在我的意见中使用包含HTML字符的文章文本,这就是我使用的内容。但还有许多其他事情需要考虑。这取决于您的文章的内容。在你的图像中由你自己决定,你只需存储图片的路径,除非你打算自己存储图片。

答案 3 :(得分:1)

请参阅此article,其中Microsoft坚持认为text数据类型将消失,因此不应在新开发中使用。替代方案是text的varchar和nvarchar以及图像的varbinary。

答案 4 :(得分:0)

分别存储图像和文字。假设您试图将二进制图像存储在数据库中,我建议将图像存储为BLOB数据类型和文本的TEXT。

不要将VARCHAR用于文章文本,因为它不会动态扩展超过您创建它的大小。

答案 5 :(得分:0)

VARCHAR将是存储文本文章的最佳选择,因为文本和图像数据类型将来会消失。

对于图像,您可以将它们存储在类似于用于css / js的文件夹中,并将其src值存储在数据库中。这在速度和存储方面都是有效的。