SQL中的错误跟踪系统的数据库设计

时间:2012-11-13 10:34:01

标签: sql-server-2008 database-design asp.net-mvc-4 bug-tracking

我是一名ASP.NET开发人员,我真的不喜欢这样的数据库。但对于我在Codeplex上的开源项目,我需要为项目设置数据库模式。

所以从这里和那里读取我已经设法做到以下几点。

enter image description here

作为数据库模式设计的新手,我想让其他一些对此主题有更好想法的人帮助我找出这个设计的任何问题。

我认为大多数关系都是自我解释的,但我仍然会记下每个关系。

UserProfile 问题之间的两个关键用于 UserId IssueCreatedBy IssueClosedBy之间的关系

由于

1 个答案:

答案 0 :(得分:1)

这看起来相当不错,IMO的主要问题在于命名一致性/过于复杂的名称。

  • 如果每个表标识符为Id,则应将其用于所有表。
  • 与表名中的单数/复数保持一致。我倾向于喜欢单数。

您可以简化表名:

  • UserProfile => User

以及字段名称:

  • Issue_Title => Title
  • Issue_Description => Description
  • Issue_Priority_Type => Type(甚至更少混淆:Name

但是我会使用更准确的外键命名

  • CreatedBy => CreatedByUserId
  • ClosedBy => ClosedByUserId

HTH。