2010-06-28 49 views
1

在我们的内部库存应用,我们存储三个值(在单独的字段)成为以这种格式印刷“份数”:PPP-NNNNN-VVVV(P =前缀,N =编号, V =版本)。字段的原子性部件编号

因此,举例来说,如果你有一个部分010-00001-01你知道它的类型为“010”的一部分(其假设是印刷电路板)的版本1。

因此,在创建零件工程的过程中要组部分一起通过保持“数字”组件(中间5位数字)跨越多个前缀相同,如下所示:

001-00040-0001 - Overall assembly 
010-00040-0001 - PCB 
015-00040-0001 - Schematics 

这似乎是有问题的,令人沮丧,因为它有时会给“数字”字段增加额外的含义(但并不一致,因为并非所有具有相同“数字”组件的部分都必须链接)。

我是一个纯粹主义者还是这很好? 1NF在原子性方面非常模糊。我认为我大多因为额外的逻辑而感到沮丧,以确保整体零件号码的下一个“数字”部分对所有前缀有效且可用。

回答

1

已经有许多已沉没,或几乎沉没,对“部件号综合症”的企业。您可能可以找到一些案例研究。 DEC part numbers有些混合起来。

顾客并不总是正确的,但顾客永远是客户。

在这种情况下,听起来像工程设计试图用单一数字来建立关系。我的意思是整体装配,PCB和Scematics之间的关系。将关系建模为关系更好。它可以让你在路上更具灵活性。您可能很难在这一点上销售工程。

1

根据我的经验,不管数据库规范性的规则,当客户端/客户/用户想要的东西做了一定的方式,则很可能是它的一个原因,而这一原因将节省他们的钱(以某种方式)。有时候,通过减少步骤,降低培训成本,或者仅仅因为这就是它一直以来的方式来节省资金。无论什么原因,最终你最终会这样做,因为他们付钱让它完成(除非它违反会计规则)。

在这种情况下,这听起来像一些查询额外的排序标准报告,以及新的“分配数量”表的自动递增的关键。这对我来说听起来不错。问我一些关于数据库报告的问题,一位客户副总裁严格委托他们以这样一种方式投入数据,以使另一位副总裁在会议中看起来很糟糕(而不是他先告诉我)。