我目前正在设计一个 MySQL 数据库,我遇到了以下问题,我不确定如何正确解决/设计。
我有实体:(简化)
Providers, Addresses, Letters, Faxes
现在:
Adresses belong to providers, Providers have many Addresses
Letters belong to Addresses, Addresses have many Letters
Faxes belong to Letters, Letter have many Faxes
所以现在我在 PHP 中使用带有这个数据库模型的 ORM 并发现自己处于我有一个 Fax-Object 的实例以及加载相应提供程序的内容的情况下。
现在这将花费我一个大连接或几个查询。
我需要走的路是:
Fax -> Letter -> Address -> Provider
现在我正在考虑是否应该在传真和提供者之间建立直接关系,这将解决这个问题。但这不会是多余的,而且会以双重努力为代价吗?如果 Fax 和 Provider 之间的关系发生变化怎么办?然后我会调整两个关系路径。
这样做的首选方法是什么?我的例子稍微简化了一点。实际上,我必须走的路要长一些。