Hardc0re Asked:2020-09-29 13:03:45 +0000 UTC2020-09-29 13:03:45 +0000 UTC 2020-09-29 13:03:45 +0000 UTC 如何实现实体之间的通信? 772 有图片和公司。每个公司可以有很多图片。它看起来像是一对多的关系。 但是,有时对公司没有约束力。 使用数据透视表实现链接以链接到 image_id、company_id 上的主键是否有意义?或者仅将 null 分配给 images 表中的 company_id 字段就足够了吗? 添加。问题 - 阅读什么以免出现此类问题? mysql 1 个回答 Voted Best Answer skingreek 2020-09-29T16:33:03Z2020-09-29T16:33:03Z 赋予将 null 设置为 company_id 属性的能力,如果这种更改和对此类选项的了解以相同的方式渗透到系统代码中(例如 if image.company == null),则更有可能增加系统的复杂性 如果你创建一个中间表,你将不得不做额外的连接,并且根据代码,它也可能泄漏到系统逻辑中...... 恕我直言,为了尽可能远离数据存储,您需要将 ddd 与 Martin Fowler 的“企业应用程序模式”一书中的数据映射器模式结合使用
赋予将 null 设置为 company_id 属性的能力,如果这种更改和对此类选项的了解以相同的方式渗透到系统代码中(例如 if image.company == null),则更有可能增加系统的复杂性
如果你创建一个中间表,你将不得不做额外的连接,并且根据代码,它也可能泄漏到系统逻辑中......
恕我直言,为了尽可能远离数据存储,您需要将 ddd 与 Martin Fowler 的“企业应用程序模式”一书中的数据映射器模式结合使用