gpt4 book ai didi

MySQL:最好有两个表或两列

转载 作者:行者123 更新时间:2023-11-30 23:55:30 25 4
gpt4 key购买 nike

我有一个包含联系人的数据库。有两种不同类型的联系人,供应商和客户。

Vendor 表有一个通过外键值附加的 vendor_contacts 表,以允许一对多关系。客户有一张类似的表。

这些联系人可以与电话号码表有一个或多个关系。我应该为这些中的每一个都有一个单独的电话号码表,还是一个带有两个外键的共享电话号码表允许一个为空?

选项 1

enter image description here

在这里,我必须强制 vendor_id 或 client_id 之一在共享电话表中为 NULL,而另一个不为 NULL。

选项 2

enter image description here

这里每个表都有自己的电话号码表。

最佳答案

TBH 我会合并供应商和客户表并有一个“联系人”表。这可以有一个联系人类型,并允许添加新的联系人。假设您想向您的联系人添加一些东西 - 地址,您可能必须以相同的方式更改每个表,然后您想要生日(好吧,也许不是,但只是作为一个例子),然后再次更改多个表。而如果您只有一个表,它可以减少管理它的开销。这也意味着您有一个联系电话号码表!

关于MySQL:最好有两个表或两列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44203973/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com