2015-07-12 148 views
-1

我正在为我的电子制造公司制作组件订单系统。 到目前为止,我们已经使用过Excel,但它开始变得非常复杂,我们看到php/mysql可以做到这一点,而不是微不足道。我是一名具有一定编程经验的电子人员,因此对我很感兴趣。组件库存/订单系统的MySQL结构

我已经开始做的一个组件库,你可以在图片1.

看到,这是工作的罚款。当我想模仿这个电子表格时出现问题(图2)。

在这里我添加每个购买物品的股票,当有新的订单。每一次都会有一个新的列。在这张照片中,为CC1110F32RHHR制造了三个订单。如何继续使用MySQL来解决这个问题?在这里添加一个新列似乎不是一个好的解决方案。

图片1:http://i.stack.imgur.com/CiOhx.jpg
图2:http://i.stack.imgur.com/aCRgR.jpg

编辑:
感谢所有的快速反馈。我可以看到,我没有足够好地解释这个问题。 在Excel表单(图片2)中,当我点击一个按钮时,新的库存被添加到每个制造商零件编号。我想在PHP中制作相同的视图。数据不一定要用这种方式来构建。

我面临的问题是,我有数百个制造商零件编号,我希望定期在他们每个人(订购日期,当天购买的股票)上存储新的信息。但唯一的办法就是这样做,因为我认为每个人都有一个单独的专栏。必须有另一种方式?

EDIT2:

试图作出在下面的文本的例子。 如果你看到这里,当我这样做时,我只能做一个订单,然后我不能再放入任何信息(不添加名为orderid2等的新列)。很显然,这不是构建表格的正确方法。在我的不同表中,mpn是唯一的标识符,所以我总是可以从组件库中获得有关所选mpn的更多信息。

mpn  date  orderedstock  orderid 

part1  1.1.15  1500    1 
part2 
part3  1.1.15  750    1 
part4 
part5 
... 
part274 
+0

您是否会将正在处理的数据库模式添加到问题中?我假设你正在寻找一个SQL查询,你会在你的问题中描述该查询吗?电子表格在数据库中要做什么? “如何解决它”有点模糊,国际海事组织。 – halfer

+0

(我们倾向于鼓励人们告诉我们他们在这里也尝试了什么。你有一个数据库设计,但是如果你能向我们展示一个'SELECT'语句 - 即使是你没有完成的一个 - 你会遇到困难 - 这将帮助我们看到你面临的问题。 – halfer

+0

如果您喜欢,请考虑遵循以下简单的两步操作步骤:1.如果您尚未这样做,请提供适当的DDL(和/或sqlfiddle),以便我们可以更轻松地复制问题。 2.如果您尚未这样做,请提供与步骤1中提供的信息相对应的所需结果集。如果数据敏感,则应提供可信的虚拟数据。 – Strawberry

回答

0

你说得对。添加列正在改变数据库模式。这些操作通常不是用于正常的数据输入。关系数据库针对具有固定表结构的表格数据进行了优化。

因此,您应该以一种使新数据显示在新行中而不是新列的方式来组织数据。

您的数据似乎非常结构化,所以关系方法似乎是一个不错的选择。如果您在这些领域拥有很大的灵活性,您可能需要考虑NoSQL解决方案,这些解决方案通常专注于高效的列式聚合/查询。

对不起,这是一个相当普遍的答案,但你的问题不够详细。

+0

感谢您的输入。试图重新提出一些问题,使其更容易理解。 – Fredrik