PHP库存数据库设计

问题描述 投票:2回答:1

我正在研究PHP Inventory应用程序。但我陷入了数据库设计的困境。逻辑是:

  1. 名作
  2. 1个catagory包含许多产品
  3. 一个产品有许多尺寸的瓶子,如300毫升,500毫升,1升,每个尺寸都有自己的价格
  4. 产品将被存储或移动到2或3个位置。像仓库,柜台等

问题是如果我输入6个单位的产品从货仓到柜台,我怎么能通过数据库表来表示?我设计了数据库,但我无法弄清楚如何转移或移动股票的逻辑。这是设计:

![在此处输入图像说明] [1]

php transfer inventory stock
1个回答
0
投票

我不能给Bob叔叔推荐这个视频:

Robert C Martin(Uncle Bob) -Clean Architecture and Design - Video

除了你可以从中学习的其他伟大的东西,特别是你的问题,外卖是你的数据库设计应尽可能延迟。您最好将数据库视为某种抽象接口,并从业务逻辑开始。这将使您对数据库中真正需要的内容有所了解,哪种API对您的逻辑与之通信有用。看起来你正在陷入困境,因为你在开发业务逻辑之前试图确定数据库结构。

为了给你一个更具体的想法你的问题,你可能需要一个表PRODUCTS,你有product_idname等。现在你似乎有一对多的关系PROD_SIZES,这可以是另一张桌子与prod_size_id或其他作为主键,product_id作为外键和sizeprice作为常规字段。但是,您可以将size-price对压缩为JSON并将其放置在PRODUCT表的另一个字段中。这将取决于您的业务逻辑。

如果您将相同的项目存储在多个位置,则可能需要另一个表格LOCATIONS,其中包含您需要的有关每个位置的所有信息。然后你有prod_size_idlocation_id之间的多对多关系,这是一个单独的hash表有idprod_size_idlocation_idnr_of_units。现在将一些单元从一个位置移动到另一个位置,只需更改最后一列就可以搞乱最后一个表。

希望能帮助到你。

© www.soinside.com 2019 - 2024. All rights reserved.