这些型号中哪一个更好?

时间:2013-06-13 00:52:55

标签: mysql sql

我希望能够对这些模型中的哪一个更适合我的项目有一个明智的看法。我需要存储事件,列表,文本文档和文件,每个文件都有一个单独的讨论主题。它们还共享许多共同领域,如作者,创建日期,最后更新日期,标题,描述等。

模特A:

拥有一个通用的“items”表,其中“type”列可区分每种文件类型(文档,列表,事件,文件)。然后,链接到此项目表的评论或讨论表。

可能的问题:

  • 我会在哪里存储特定于项目的数据,例如日期本身(如果是日期)?或文件的路径(如果是文件)。

模特B:

为列表,事件,文件和文档提供单独的表。

可能的问题:

  • 必须在讨论/评论表中指定ID和类型

(欢迎您提出第三种型号!)

1 个答案:

答案 0 :(得分:2)

(加为答案)

C)将所有项目类型的通用信息存储在items表中。在表lists events等中,存储引用items表中一行的行,并包含作为该项类型的特定属性的所有数据。