gpt4 book ai didi

MySQL 外键约束不适用于我的数据库设计

转载 作者:行者123 更新时间:2023-11-29 09:27:44 25 4
gpt4 key购买 nike

我正在使用从其他网站导入的 XML 来制作产品价格比较网站。导入的产品进入名为“产品”的表中。

产品包含:
- id
- SKU(产品代码)
- 网址
- 店铺名称
- 价格

我有另一张名为“productshop”的表。此处,该表包含以下值:
- ID (PK)
- SKU(“产品”表中产品的外键)
- 商店显示名称

工作原理:管理员手动添加一个productShop条目。管理员输入商店的显示名称以及该商店使用的 SKU 代码。这样,该产品就会添加到网站中。

一切正常,但我遇到了以下问题:

当产品表更新时,商店可能会暂时缺货。这意味着我从他们那里收到的 XML 文件中不再包含该内容。我也不想立即删除“productshop”条目,因为该商品有可能再次可用,然后我必须再次手动添加它。

基本上:我希望产品商店能够引用可能不存在的产品。当产品商店引用产品时,现在无法删除该产品。

这是糟糕的数据库设计吗?我应该禁用外键约束还是这是一个非常糟糕的主意?

最佳答案

您正在阅读 XML 文件,将它们添加到表中,然后当客户进行购买过程时,该产品可能不再在网站上提供,因此也不再出现在 XML 上?

如果是这样,我相信您需要使用多线程在网站上工作,以检查该商品是否仍然可用,如果是,则继续销售。

另一种情况,不确定您使用 XML 更新数据库表的频率,但您可以向数据库添加行版本并检查是否发生了更改,如果发生了更改,您需要检查是否仍然有可用的产品或不是。

行版本 MySQL: https://forums.mysql.com/read.php?60,367176,367176

行版本 SQL: https://learn.microsoft.com/en-us/sql/t-sql/data-types/rowversion-transact-sql?view=sql-server-ver15

希望这有帮助!

关于MySQL 外键约束不适用于我的数据库设计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59290145/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com