首页 > 解决方案 > 在 MySQL 中,如果有多对多表,我应该创建 auto-incr 列作为 PK 还是使用多列唯一作为 PK?为什么?

问题描述

例如,有课程关系表,学生 id 和课程 id 是多唯一的,如果我创建这个关系表,我应该使用 auto-incr 列作为 PK,还是使用学生 id 和课程 id 作为多 PK?

标签: mysqlsqldatabase

解决方案


有些人将自动增量列作为 PK 添加到每个表中。

但是我相信在表是两个或多个表之间的关系表的情况下,最好有一个多列-PK。

另一方面,删除多列-PK 表条目更费力,因为您需要给出多列-PK 中的所有列。

另外,检查您的技术堆栈(编程语言)是否存在多列 PK 问题。


推荐阅读