首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >库存系统数据设计问题

库存系统数据设计问题
EN

Database Administration用户
提问于 2021-03-27 06:48:11
回答 2查看 767关注 0票数 2

因此,我一直试图设计一个库存管理系统的汽车展厅。这个设计的问题是我可以买到东西,但是在销售产品的时候,我不能把它和我的购买联系起来。我的想法是将一个Batch_ID添加到我的Inventory_Details表中,但我只能将该Batch_ID链接到详细信息表中,而不是在库存表中。任何建议都会有帮助。

EN

回答 2

Database Administration用户

回答已采纳

发布于 2021-03-27 12:10:41

在传统的库存仓库系统或仓库管理系统(WMS)中,每当有一个新项目在手(即创建或购买,并因此添加到库存中)时,必须创建唯一标识符,通常是序列号,然后才能将其输入库存并调整手头的数量。在汽车展厅的背景下,我可以想象这将是VIN。(我不是汽车专家,但我相信这是一个独特的标识符。)

即使在批量收到商品时,也需要在库存中添加许多唯一标识符,然后才能将数量添加到手头的数量中。因此,如果您的Purchase表与Purchase可以购买多少辆汽车有一对多的关系,由于批处理,那么您就无法将其直接关联到Inventory表(目前为止)。相反,您应该有一个单独的表,例如PurchaseLines,它与您的Purchase表是多对一的,并且与购买的每辆汽车的唯一VIN都有一行。(这甚至是一种简化,因为真正的WMS实际上为了分类账的目的,将其进一步规范化为至少2个表,但我认为这超出了这里的范围,这应该足以满足您的需要。)然后,您的InventoryDetails表也将包含VIN,并直接关联到它来自的PurchaseLine

另外,您应该只有一个Items表,它定义了您的汽车的标准,因此您可以通过Item泛泛地引用您手头的数量。因为我确信您不希望跟踪VIN的单个数量,它将始终是1(因为我上面的更改会导致这样的结果)。相反,如果您有一个Items表,其中包含ModelDescriptionColorMFYear等字段,那么您的InventoryDetails表将变得更加规范化,只存储一个ItemId字段(一对一地存储Items表)。然后您的Inventory表现在可以跟踪ItemId的数量,这将是InventoryDetails之间的关系。

最后,ItemId的概念在整个仓库管理系统中变得普遍使用。这就像你的核心测量单位。它应该是您的购买(在PurchaseLines中)和您的销售(在一个等价的SalesLines表中)的一部分,并且是确定所处理的项目的一种方法。

附加资源:

  1. 库存管理系统的ER图实例
票数 1
EN

Database Administration用户

发布于 2021-03-27 08:23:14

你会考虑把买卖car_ids联系起来吗?

为什么不把car_ids联系在一起呢?car_id把购买和销售联系在一起。

所以,万一那辆车被卖了,你可以直接把它和之前做过的相应购买联系起来。

票数 0
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/288811

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档