You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何映射ERD转关系模式时另一端为弱实体的M:N关系

弱实体场景下M:N关联表的映射规则

  • 首先需要先完成弱实体本身的关系映射:弱实体对应的表主键由其依赖的标识强实体的主键 + 自身的partial key共同组成,partial key无法单独唯一标识弱实体实例,二者缺一不可。
  • M:N关联表ENROLLS的主键由两端关联实体的完整主键组合构成,所以弱实体一端的所有主键字段都需要加入ENROLLS的联合主键,不能只填入partial key。

对应场景示例:

如果你ERD中ENROLLS关联的弱实体是课程班次,它依赖的标识强实体是课程:

  1. 课程表结构:[CourseId (PK), 课程名, 学分]
  2. 课程班次(弱实体)表结构:[CourseId (PK, 外键关联课程表.CourseId), SectionNo (PK), 学期, 年份],联合主键为CourseId+SectionNo
  3. 学生表结构:[Ssn (PK), 姓名, 院系]
  4. 最终ENROLLS关联表结构:
[Ssn (PK, 外键关联学生表.Ssn), 
 CourseId (PK, 外键关联课程班次表.CourseId), 
 SectionNo (PK, 外键关联课程班次表.SectionNo), 
 选课时间, 成绩]

Ssn、CourseId、SectionNo三者共同作为ENROLLS的联合主键,既符合M:N关联的主键设计规则,也能唯一对应到弱实体的单个实例。

内容的提问来源于stack exchange,提问作者S. Coughing

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 23:27:03