设计SQL表并在第一时间将其正确
我目前正在为我的公司开发一个问题跟踪器,帮助他们跟踪网络出现的问题。我正在使用C#和SQL 每个问题都有大约20件我们需要跟踪的事情(状态、工作损失、谁创建的、谁在处理的等等)。我需要将受问题影响的团队列表附加到我的主要问题表中的每个条目。理想情况下,受影响的团队列表包含指向唯一表实例的某种链接,仅针对该问题,该表显示了受影响团队的列表以及每个团队实验室受影响的百分比设计SQL表并在第一时间将其正确,sql,database-design,Sql,Database Design,我目前正在为我的公司开发一个问题跟踪器,帮助他们跟踪网络出现的问题。我正在使用C#和SQL 每个问题都有大约20件我们需要跟踪的事情(状态、工作损失、谁创建的、谁在处理的等等)。我需要将受问题影响的团队列表附加到我的主要问题表中的每个条目。理想情况下,受影响的团队列表包含指向唯一表实例的某种链接,仅针对该问题,该表显示了受影响团队的列表以及每个团队实验室受影响的百分比 所以我的问题是,在问题表条目和该问题的唯一表之间实现这种“链接”的最佳方式是什么?或者我对这个问题的想法是错误的。如果我正确理解
所以我的问题是,在问题表条目和该问题的唯一表之间实现这种“链接”的最佳方式是什么?或者我对这个问题的想法是错误的。如果我正确理解了这个问题,我会创建
- 包含20个一般项目的问题表
- 包含团队列表的团队表
- 团队发布包含两者之间链接的表
这有意义吗?如果我正确理解这个问题,我会创建
- 包含20个一般项目的问题表
- 包含团队列表的团队表
- 团队发布包含两者之间链接的表
希望这能有所帮助。这听起来像是一个经典的多对多关系。。。 你可能想要三张桌子
对于每个问题,可能有零到多个记录,每个记录都代表问题影响的团队。这听起来像是一个经典的多对多关系。。。 你可能想要三张桌子
对于每个问题,可能有零到多个记录,每个记录代表问题影响的团队。我不会为每个问题创建唯一的表。我会这样做 Table: Issue IssueId primary key status workLoss createdby etc Table: Team TeamID primary key TeamName etc Table: IssueTeam IssueID (foreign key to issue table) TeamID (foreign key to team table) PercentLabsAffected 表:问题 IssueId主键 地位 工作损失 创建者 等 表:团队 TeamID主键 团队名称 等 表:IssueTeam IssueID(问题表的外键) TeamID(团队表的外键) 受影响百分比
我不会为每个问题创建一个唯一的表。我会这样做 Table: Issue IssueId primary key status workLoss createdby etc Table: Team TeamID primary key TeamName etc Table: IssueTeam IssueID (foreign key to issue table) TeamID (foreign key to team table) PercentLabsAffected 表:问题 IssueId主键 地位 工作损失 创建者 等 表:团队 TeamID主键 团队名称 等 表:IssueTeam IssueID(问题表的外键) TeamID(团队表的外键) 受影响百分比
除非我理解错误,否则您不应该为问题的每个实例都有一个唯一的表
您的数据库应该有三个表:一个问题表、一个团队表和一个IssueTeams联接表。IssueTeams表将包括外键(即TeamID和IssueID),它们引用团队中的相应团队和问题中的问题。因此,问题团队可能有如下记录(Issue1,Team1)、(Issue1,Team3)。您可以将每个团队实验室的受影响百分比保留在联接表中。除非我对您试图执行的操作理解错误,否则您不应该为问题的每个实例使用唯一的表 您的数据库应该有三个表:一个问题表,一个团队选项卡