首先,我只知道sql,但不了解sql,所以请多多包涵

我遇到一种情况,默认条件是(例如)一个人只能有一个日程表,而一个日程表只有一个人,所以我只需要在我的person_id中创建一个FK作为schedule table。 (1-1关系)

但是,现在一个日程表可以有一个以上的人,而一个人可以有多个日程表(多对多关系)。是否有可能做到这一点?如何重新设计我的数据库?

最佳答案

在两个表之间直接进行多对多引用并不是一个好主意。最好在关系之间放置一个单独的表。


然后,将执行以下示例查询:

select * from Person
join PersonSchedule on PersonSchedule.PersonId= Person.Id
join Schedules on Schedules.Id = PersonSchedule.ScheduleId

关于mysql - 同一张表中是否可以有多个外键?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26379440/

10-11 02:57