我正在尝试为一个简单的清单程序设计一个数据库体系结构。
这个存货清单将由箱子里的物品组成。框包含项目,并且是项目本身。
我想是吧 box
将是一个超级类型的 item
.
我的主要问题是如何构造/约束框之间的关系,以便仍然可以约束一个项目一次只能在一个“位置”的唯一条件。
我知道多对多关系应该让我知道哪些项目在哪些框中,但是其他框中的框呢?
例如: Box A
包含 Item B
以及 Box C
. Box C
包含 Item D
.
如何设计一个系统,当我寻找 Item D
我会在里面找到的 Box A
以及 Box C
(如果我也能知道盒子之间的关系——后者在前者里面——那真是太好了)。
1条答案
按热度按时间tuwxkamq1#
您可以将self关系用于表本身。您可以在数据库设计中提到以下列:
您可以将数据放置为:
因为itemid是一个主键,所以,数据库只允许每个项有一行,所以只能在一个框中使用。
检查此设计是否有帮助。。。