**联合主键(Composite Primary Key / Compound Primary Key)**是指:用两个或多个字段组合在一起,作为一张表的唯一标识(主键)。
PRIMARY KEY (id)
PRIMARY KEY (student_id, course_id)
学生选课表:
| student_id | course_id | score |
|---|---|---|
| 1 | 101 | 90 |
| 1 | 102 | 85 |
| 2 | 101 | 88 |
✅ 可以重复出现 student_id=1
✅ 可以重复出现 course_id=101
❌ 不能出现 (1,101) 两次
CREATE TABLE score (
student_id INT,
course_id INT,
score INT,
PRIMARY KEY (student_id, course_id)
);
| 对比项 | 联合主键 | 联合唯一索引 |
|---|---|---|
| 是否唯一 | ✅ | ✅ |
| 是否允许 NULL | ❌ | ✅ |
| 一张表数量 | 只能一个 | 可多个 |
| 用于标识行 | ✅ | ❌ |
✅ 适合:
⚠️ 注意:
如果你愿意,我也可以用 Java / Hibernate / MyBatis 或具体业务场景给你讲。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。