gpt4 book ai didi

个人和公司的 mySQL 联系人表

转载 作者:行者123 更新时间:2023-11-29 18:17:31 24 4
gpt4 key购买 nike

我有 2 个表:personcompany
我想创建一个表 address 并知道:

  • 一个可以有零个、一个或多个地址
  • 一家公司可以有零个、一个或多个地址
  • 地址的基本行对于personcompany是相同的

解决方案1

  • 创建一个包含所有地址行(街道、城市...)的表地址(无外键)
  • 使用外键 address_idperson_id 创建 person_address
  • 使用外键 address_idcompany_id 创建 company_address

=>个人公司可以共享相同的地址(好)并且不会重复(好)
=> 有点麻烦:我首先必须创建 adress 然后 person/company_address

解决方案2

  • 使用外键 person_id 创建表 person_adress 以及所有地址行
  • 使用外键 company_id 创建表 company_adress 再次创建所有地址行

=> 地址信息行定义了两次

解决方案 3?

有没有办法创建一个唯一表地址,它可以引用公司?

最佳答案

感谢雅各布·巴恩斯提供的链接:
Foreign Key to multiple tables

创建一个“父表”实体,它可以是个人公司地址然后引用实体

关于个人和公司的 mySQL 联系人表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46899940/

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