【问题标题】:Blog DB question about tags关于标签的博客数据库问题
【发布时间】:2011-07-24 13:13:44
【问题描述】:

我开始使用 LINQ2SQL 在 ASP.NET MVC3 中创建博客,我想知道为帖子制作标签的最佳方法是什么。

场景 1: 我只是在名为tagsblogPosts 表中添加另一行,用逗号分隔每个标签,当我搜索包含某个标签的每个帖子时,我只需选择 * 其中包含我所追求的文本。

场景 2: 我添加了另一个名为PostTags 的表和另一个名为Tags 的表。 PostTags 将包含 postIDtagIDTags 将包含 IDTag 本身。还要建立这些表之间的数据库关系。

那么哪个是最好的解决方案?

【问题讨论】:

  • 在场景一中,我相信您的意思是“添加另一个”而不是行,对吗?

标签: asp.net sql linq asp.net-mvc-3


【解决方案1】:

场景 2 对我来说看起来更好,因为它清楚地将另一个表中的标签分开,使数据库更加规范化,并允许通过标签进行更轻松的查询。除此之外,您将能够更轻松地对这些标签执行查询,并独立于博客文章显示它们。

【讨论】:

  • + 你可以在 tagID 和 postID 上建立数据库索引,这使得查询非常快。
【解决方案2】:

我认为场景 1 根本不应该是一个选项,它显然不是好的数据库设计,会引入冗余数据,并且当表中有很多行时查询效率会很低。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-13
    相关资源
    最近更新 更多