我想为一个电子学习网站构建一个带线程的论坛(当然是开源的asp.net mvc,但这对于本问题并不重要)。
应该使用什么数据库结构来帮助以最优性能检索论坛帖子?我没有把数字放进去,因为它可能会随着被检索的行数而变化。
此外,我应该能够将特定主题链接到其他主题。例如显示“相关论坛链接”。
我正在使用SQL Server 2005。
以下是我考虑的结构(毫不掩饰地从Stephen Walther的博客文章中借鉴):
表:Forum
· Id
· ParentId (null if this is the first message)
· ParentThreadId (Identify message in the same thread)
· Author
· Subject
· Body
· PostedDate
表格:RelatedForum
· ForumId
· RelatedForumId
欢迎提出想法/建议。
提前致谢。