如果需要,如何添加新列
Posted
技术标签:
【中文标题】如果需要,如何添加新列【英文标题】:How to add new columns if needed 【发布时间】:2021-08-20 17:40:10 【问题描述】:我是 mysql 数据库的新手,我正在尝试使用 php 创建一个网络库存和生产数据库。
在这个库存软件中,我正在尝试创建一个表,其中创建了产品并插入了它们的组件。但是如果一个产品有不同数量的组件,我想知道有没有办法从网站的管理页面添加更多的组件列。
另一件事是这些组件是从另一个表中取出的,只要创建了新的产品订单,就应该从组件表中减去那些使用的组件的数量。 (不过这是个大问题,现在解决第一个问题应该就够了)。
【问题讨论】:
【参考方案1】:是的,您可以随时从数据库表中添加或删除列。
但是,我不会这样做。您必须尝试设计一个可以处理具有不同数量组件的产品的数据库。通常会这样做:
-
为您的
products
创建一个表。
为您的components
创建一个表。
创建一个链接表product_components
,以指示产品由哪些组件组成。
见:Using linking tables for many to many relationships in MySQL
【讨论】:
谢谢,这是一个聪明的解决方案。希望能更多地了解主要问题。 @Mekiro 跟踪库存是一个更高级的话题,并且有许多可能的解决方案。对于 SO 问题,最好能更清楚地说明数据库需要做什么,并向我们展示您尝试实现它的内容。【参考方案2】:你需要了解mysql中的关系。在像 mysql 这样的关系数据库中,基本上有 3 种类型的关系(有些人可能会说 4 种)。
这里根据你的描述可以使用
-
一对多
多对多
数据库中的关系。这可能会帮助你—— https://afteracademy.com/blog/what-are-the-different-types-of-relationships-in-dbms
【讨论】:
以上是关于如果需要,如何添加新列的主要内容,如果未能解决你的问题,请参考以下文章
在Pandas Dataframe列中查找某些单词,如果找到,则将它们添加到新列中