Mau*_*sky 6 mysql database database-design entity-relationship relational-database
我必须将此信息保存在数据库中
人 - >结婚 - >人
我应该在哪里保存这些信息?我应该在这里申请什么样的设计模式?
谢谢!
如果只能嫁给一个人:1:1
-------------
- Person -
-------------
id (key)
maried_to_id (foreign key)
Run Code Online (Sandbox Code Playgroud)
如果您可以与一个以上的人结婚或想要跟踪以前的婚姻,n:n
-------------
- Person -
-------------
person_id (key)
-------------
- Mariage -
-------------
first_person_id (foreign key)
second_person_id (foreign key)
start_date
end_date
Run Code Online (Sandbox Code Playgroud)
(也是 first_person_id + second_person_id + date 形成婚姻的唯一键。您可以省略日期,但不会跟踪再婚)