数据库表设计问题

时间:2012-05-21 15:04:30

标签: oracle database-design

我对表格设计有疑问。

第一个名为products_mast的表包含

CONTRACTS_ID (PK),
AGREEMENT_NO,
SUPPLIER_CODE,
START_DATE,
END_DATE
PROD_EXTENSION_NO

名为products_det的第二个表包含

HIRING_ID (PK),
CONTRACTS_ID(FK),
PRODUCT_CODE,
RATE

上表与CONTRACTS_ID相关联。 Start DatesEnd Dates位于第二个表格中的一个表格和产品rates中。

在我的第三个表TRANSACTIONS包含,

TRANS_ID,
TRANS_REF_NO,
HIRING_ID FK (products_det),
REMARKS

一个问题通常是agreement_no可以延长一段时间,延长协议的新产品费率。所以我添加了这些细节 products_mast和products_det具有相同的协议no,扩展名为002(对于新扩展名)。在TRANSACTIONS中如何引用正确的 如果我将HIRING_ID与products_det相关联,则因为HIRING_ID会以新的扩展名递增。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

我不太确定我是否完全按照你所建议的方式达成协议没有延期002的价值(新扩展)但是如果它是一个唯一标识每个协议的交易的情况没有,那么在表格中添加一个FK怎么样将它链接回到products_mast表中的AGREEMENT_NO字段?