关联 table 多对多,具有不同程度的实体特异性
Associative table many on many with varying level of entity specificity
我需要将一条消息或一组消息与一个或一组显示器相关联。
消息有类型,显示有类型和位置(例如,城市)
我想将特定类型的消息或所有消息关联到特定类型 and/or 位置的显示或所有显示。
我的第一个想法是使用外键构建一个关联 table 多对多:
- Message_id
- Message_type_id
- Display_id
- Display_location_id
- Display_type_id
并且在添加条目时,为我感兴趣的字段设置一个值(例如 message_type 和 display_location),并为其他字段设置空值。
但是,我对这种方法的缺点很感兴趣,想知道是否有更好的方法来处理此类问题。在设计数据库时搜索(徒劳地)这种模式几天后,我最终决定在这里问。
感谢您的帮助。
这个方法很合理。
我突然想到,您只需要 "intersection entity" 中的 Message_id 和 Display_id,因为其他列可能来自 "parent" 实体。
Message_type_id
Display_location_id
Display_type_id
我需要将一条消息或一组消息与一个或一组显示器相关联。
消息有类型,显示有类型和位置(例如,城市)
我想将特定类型的消息或所有消息关联到特定类型 and/or 位置的显示或所有显示。
我的第一个想法是使用外键构建一个关联 table 多对多:
- Message_id
- Message_type_id
- Display_id
- Display_location_id
- Display_type_id
并且在添加条目时,为我感兴趣的字段设置一个值(例如 message_type 和 display_location),并为其他字段设置空值。
但是,我对这种方法的缺点很感兴趣,想知道是否有更好的方法来处理此类问题。在设计数据库时搜索(徒劳地)这种模式几天后,我最终决定在这里问。
感谢您的帮助。
这个方法很合理。
我突然想到,您只需要 "intersection entity" 中的 Message_id 和 Display_id,因为其他列可能来自 "parent" 实体。
Message_type_id
Display_location_id Display_type_id