gpt4 book ai didi

mysql - 嵌套程序集数据库结构

转载 作者:搜寻专家 更新时间:2023-10-30 20:47:39 24 4
gpt4 key购买 nike

我正在为我工​​作的制造企业创建报价软件,我不确定如何处理我的 MySQL 数据库结构中的程序集,因为它们有点像 Russian Doll .

Here's a rough ERM和一个简单的例子:

  • 三个小部件(2×A 和 1×B)焊接在一起形成子组件C。这在“PartAssem”表中很容易处理
  • Sub Assembly C 然后是 Assembly D
  • 程序集 D 然后用于更大的程序集,例如 E

在这种情况下,程序集部分只有两层深,只有程序集 D 既是“父”程序集又是“子”程序集,但在很多情况下,对于较大的程序集,此层次结构会更深。

显然,您不能像我展示的那样将单个 UID 用作另一个表中的两个单独的外键。由于大多数时候我会查询父 ID,我可以将 SubAssemChildID 设置为外键,但我担心这可能会导致并发症和/或我缺少替代解决方案。

感谢您提供的任何帮助。

最佳答案

您走在正确的轨道上。接下来需要做的是了解如何使用 Common Table Expressions 在 SQL 中查询递归结构。 .一旦你得到了一个玩具示例,就用你自己的表试试吧。一开始这不是最容易理解的东西,但是一旦你掌握了它,你可能会惊讶于它的用处。在一个好的 DBMS 实现上,您可能还会惊讶于它的速度有多快。

虽然我在这里,但有两种意见。首先,您的名字不需要“tbl_”前缀。 当然这是一张 table ; FROM 后面还有什么?而且,如果您有选择,请查看 Postgres,它在 SQL 极客中广受好评。一方面,日期算法确实有效,而 2 月 31 日是一个错误。

关于mysql - 嵌套程序集数据库结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54134024/

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