0

我们有一个项目正在运行,我需要在一个由另一家公司创建的新数据库中进行一些 ETL 工作。在浏览开发人员给我的数据库图时,我看到其中 4 个表有一个循环引用:

我无法上传图表,但这里是表格的一般结构:

案子

  • ID (PK) CaseStatusInfo (FK)
  • SignOffPlanning (FK)
  • SignOffReportReview (FK)
  • SignOffQuarterlyReview (FK)

案例状态信息

  • 身份证(PK)
  • 案例 ID (FK)

签核计划

  • 身份证(PK)
  • 案例 ID (FK)

签署报告审查

  • 身份证(PK)
  • 案例 ID (FK)

签收季评

  • 身份证(PK)
  • 案例 ID (FK)

这些与 Case 表链接的 Info 表的使用方式是,它将通过将主键存储在每个 Info 表中来存储案例的历史状态。这确实具有逻辑意义,但我认为进一步规范化这些表以将历史数据保留在这些规范化表中可能会更好。

我的问题是:拥有这种类型的数据库结构而不是进一步规范化表可能会出现什么问题?

4

1 回答 1

0

听起来你真的想要这些表的 1-1 关系。我假设每个表都可能有大量其他属性,所以我可以理解为什么你不想将它们组合成一个巨大的 CASE 表。在那种情况下...您可能希望结合 PK/FK 来强制建立 1-1 关系...

案子

  • 身份证(PK)
  • CaseStatusInfo (FK)
  • SignOffPlanning (FK)
  • SignOffReportReview (FK)
  • SignOffQuarterlyReview (FK)

案例状态信息

  • 案例 ID(PK、FK)

签核计划

  • 案例 ID(PK、FK)

签署报告审查

  • 案例 ID(PK、FK)

签收季评

  • 案例 ID(PK、FK)
于 2013-01-29T10:09:58.760 回答