如果以下三个独特的属性,从SalesOrderHeader的表在3NF模式,其中之一将是一个SalesOrderHeader的枢纽理想的商务键到达:Data Vault - 如何选择业务密钥?
- 的SalesOrderID(原表的PK)
- SalesOrderNumber
- PurchaseOrderNumber
如果以下三个独特的属性,从SalesOrderHeader的表在3NF模式,其中之一将是一个SalesOrderHeader的枢纽理想的商务键到达:Data Vault - 如何选择业务密钥?
定义
根据在Data Vault 2.0的方法,业务重点是企业用来识别一个记录(从here)的关键:
业务键都应该具有意义的企业用户。在一个完美的世界里,他们真的应该被在这个行业中生活和工作的个人破译。例如,VIN(车辆识别号码)号码对于在汽车行业工作的人来说是非常知名的。有些人非常善于阅读这些数字,他们可以告诉你一些序列的含义 - 为你定义数字。 [...]
当从销售系统转到合同系统时,此密钥不会更改,它在从合同系统转移到制造系统或业务中的任何其他系统时不会更改。它一旦分配就保持一致。 [..]
的情况下
注:我想了很多,我的回答,因为我不知道的业务和IT的依赖。
SalesOrderID
是一个内部id,除了技术用户以外没有人可以看到。
而且PurchaseOrderNumber
可能连接到Purchase
,这可能在语义上完全不同。虽然根据使用情况它可能是可能的,但是这个密钥甚至代理键是有意义的。
因此,要确定SalesOrderHeader
我会得出结论使用SalesOrderNumber
,因为这个数字似乎直接绑定到头。