php - 应该将二对多数据关系视为多对多关系吗?

标签 php mysql database kohana foreign-key-relationship

我有 2 个数据库表:Teams 和 Games。

为了这个问题的目的,我们正在处理足球(足球)队和比赛。

每场比赛只有 2 支球队,通常是主队和客队,但偶尔两支球队都可以保持中立。

我的问题是我是否应该使用 Games 表中的 2 个外键(home_team_id、away_team_id)来表示这种数据关系,或者我是否应该使用 games_teams 表的多对多关系来链接两者,在这种情况下我还需要存储球队是主队还是客队,这似乎有点矫枉过正。

更令人困惑的是,我在 KohanaPHP 中使用 ORM 库,这些库期望 fk 被称为 team_id 或链接表仅包含 2 列。如果您在 KohanaPHP 中遇到过此问题,请留下回复,否则我们也非常感谢任何一般性建议。

最佳答案

只需使用这两列,否则您只需要在联接表中对其进行限定即可。这不像是一颗沉睡的定时炸弹,突然有一天您会发现您需要拥有一个真正的多对多。

关于php - 应该将二对多数据关系视为多对多关系吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1674785/

相关文章:

php - 元 og :image not working for my wordpress website using SSL

mysql - 将 SQL Server 数据转换为 MySQL

mysql - 按 COUNT(*) 过滤?

php - 将网站移至另一个本地主机尝试 - 没有错误,但没有显示数据

PHP http_response_code();与 header();

php - 148 是不是包含的文件太多

java - 如何指定一个字段,以便当我们查询时,使用该字段的 Joda LocalDate 或 LocalDateTime 值,将其映射到同一列?

php - Lumen 5.6 迁移错误指定的 key 太长最大 key 长度为 767 字节

PHP 连接到 Oracle 数据库

php - 在两台机器上保持 2 个 mysql 数据库相同