我很难模拟这种情况。我在设计一个基于位置的优惠券系统。用户可以定义区域和优惠,然后将每个优惠关联到多个区域。此外,每个区域可以有多个优惠。所以zone和offer有很多对很多的关系。用户实体拥有这两个实体。只有在同一用户拥有区域和优惠的情况下,才能将它们关联起来。图表会很有帮助。多谢了。
以下是您的数据库模型:
Tbl_Zone
id_Zone not null
id_User not null
zoneDescription not null
....
Tbl_Offer
id_Offer not mull
id_User not null
offerDescription not null
....
Tbl_ZoneOffer
id_ZoneOffer
id_Zone not null
id_Offer not null
回到您的用户规则,这将是您的业务逻辑的一部分,其中表将在显示之前被过滤:
SELECT * FROM Tbl_Zone WHERE id_User = myUserIdentifier
SELECT * FROM Tbl_Offer WHERE id_User = myUserIdentifier
关于每个区域的可用优惠列表:
SELECT zoneDescription, offerDescription FROM Tbl_ZoneOffer
INNER JOIN Tbl_Zone on Tbl_ZoneOffer.id_Zone = Tbl_Zone.id_Zone
INNER JOIN Tbl_Offer on Tbl_ZoneOffer.id_Offer = Tbl_Offer.id_Offer
WHERE Tbl_Zone.id_User = myUserIdentifier
假设用户可以独立于区域和提供是否实际连接而拥有自己的区域和提供,那么您可以做如下操作:
这是一个典型的菱形依赖问题,其中菱形底部必须为两个菱形边引用相同的菱形顶部,这通过使用标识关系来确保,因此顶部PK向两边传播,然后在底部合并(注意zone_offer.user_id前面的FK1和FK2)。
您总是可以添加更多(代理?)如果有外部原因可以这样做,则此模型的关键字,但此基本结构必须以某种形状或形式存在,以确保只能连接同一用户的区域和提供。
我很难找到数据库中多对多关系的最佳设计。我的项目允许用户创建我们所说的日志警报。日志警报将检查给定的日志是否满足某些标准,如果满足,它将向AWS SNS主题发送消息。我想做的是将日志警报与AWS SNS主题联系起来。我还想将哪个用户分配日志警报与AWS SNS主题联系起来。
如何为这种多对多关系分配默认值?制作两个关联表->一个用于收件箱-关系,另一个用于发件箱-关系会更好吗?我该如何做到这一点?这个问题的其他解决方案? 任何帮助都非常感谢--非常感谢!
我的Spring Boot应用程序中有两个实体: 使用者JAVA 和 Role.java 我的MySql数据库 我已经排除了这个问题的getter和setter方法。 我想实现两个实体之间的多对多关系。每个用户都应该能够为自己分配多个角色 我已经在我的数据库中为这两个表创建了一个映射表。它有几排 用户id 我还创建了一个新的实体UserRole。java,如下所示: 现在我的问题是:这种构造正确吗
问题内容: 我的Spring-Boot应用程序中有两个实体: User.java 和 角色.java 对于我的MySql数据库 我已经排除了此问题的getter和setter方法。 我想实现两个实体之间 的多对多关系 。每个用户都应该能够为其分配多个角色 我已经为数据库中的两个表创建了一个映射表。它有行 用户身份 role_id。 我还创建了一个新的Entity UserRole.java ,如下
只是一个关于设计Firestore模式的简单问题: 我知道你必须使用正确的工具来完成这项工作,Firestore不应该是一个关系数据库,但有没有建议的技术来建模多对多关系? Ex: 我想建立一个物业管理应用程序 公司拥有包含单元的房产。这里的层次结构很简单。 因此,随着时间的推移,租户将租用多个单元,随着时间的推移,每个单元将有许多租户...所有这些都包含在将一个单元与一个或多个租户联系在一起的租
问题内容: 程序包A有一个桌面Y和一个MonitorZ。程序包B有一个桌面Y和 两个 MonitorZ。我想在由实体设计器创建的数据库中表示该关系。 和之间(具有台式机,显示器,笔记本电脑等)之间存在多对多关系。每个季度,我们都会更新包裹,客户下订单。他们选择一个包,下订单时,该包会将其数据(类型,品牌,型号等)转储到新创建的中。 问题出在实体设计器为关系创建联结表的方式上。联结表具有两列,分别对