我正在努力将我的网站上的博客文章放在一起。
我知道如何使用SQL,而且我对不同的类型和长度有所了解,但我对我桌子的最佳长度和类型感到茫然。
我目前的设置方式是:
Tags是帖子的字符串数组,与类别相同。项目将是一系列的整数,即"项目"与帖子相关的。 (每个项目都有自己的页面,当你进入页面时,你可以获得有关它的所有帖子的列表。)
我的问题是,我可以设置此表的最佳方式是什么?
更新
目前,我对存储此优化和优化磁盘使用情况的最佳方式感兴趣。现在我有一个免费的x10hosting服务器我将要使用,它有512mb的限制。如果有必要,我可以稍后支付更大的服务器费用,但是我想坚持使用免费的服务器,直到我达到最大限度。
答案 0 :(得分:0)
在PHP中,您可以使用一个名为“serialize”的函数,我一直在SQL存储中使用它。
$foo = serialize($bar);
现在只需存储$ foo。 $ bar甚至可以是完整的对象。事实上你可以抓住价值和
$bar = unserialize($foo);
$ bar现在包含您之前想要的任何内容。数组,对象等。这使得sql表的布局变得懒惰,但由于开始和结束结果只是php脚本中的变量,因此表格并不重要。只需将字段 文本 (不是varchar(max))并且你就是肉汁!
答案 1 :(得分:0)
对于严格的空间保护要求:
FIND_IN_SET()
检查tags
是否包含特定tag
。这将很慢,并且不能使用任何索引。