设计数据库模式

时间:2011-05-18 11:31:33

标签: database-design orm

我正在尝试开发一些数据库模式。现在我有一篇文章A然后我有一套与之相关的文章。

我应该使用哪种方法?

ArticleID,ArticleName,RelatedArticles (相关文章是articleid _的

的逗号分隔值

OR 我可以有两个表如下: 文章

ArticleID, ArticleName

RelatedArticle
ArticleId,RelatedArticleID 

我可以轻松查询 select * from article a,RelatedArticle a where a.ArticleID = b.ArticleID

我怎么能把它变成bibernate的类结构;

2 个答案:

答案 0 :(得分:3)

在单个字段中存储多个值与第一个普通表单所需的原子性相反。这几乎总是一个坏主意。

使用单独的表格来匹配相关文章。 Hibernate应该能够通过让文章类包含相关文章的列表来处理这个问题。

答案 1 :(得分:0)

如果文章与其相关文章之间的关系是排他性的亲子关系,即对于给定的文章可能会有许多相关的子文章,但这些子文章不能与任何其他文章相关,那么你可以拥有一个更简单的1表设计,其中列为articleId,ArticleName和parentArticleId(可为空)。