mysql n 识别_mysql – 不能有“不识别”的N:M关系吗?

我的数据库ERM(实体关系模型)有一个TEACHER实体类型,它与SUBJECT_MODULE实体类型相关(因为每个主题中的不同模块由不同的教师讲授,对于某些模块,甚至每个模块中的不同章节都可以通过不同的教师)通过TEACH关系类型.

这是一种N:M的关系,因为每个教师都可以教授许多学科模块,每个模块都可以由几位老师教授.

但在我看来,这不是一种识别关系,因为主题模块不依赖于教师的独特识别;如果您不同意这一点,请说出来.

但是从this tutorial开始(虽然它只是说,“识别关系通常用于从多对多关系创建的连接表.”),并发现MySQL Workbench的ERD建模工具只包含一个工具来建模M:N关系,用于“识别N:M关系”,至少工具提示是这样的……我想知道N:M关系是否总是或者不总是识别关系.请澄清一下.谢谢.

解决方法:

I wonder if an N:M relationship is always or is not always an identifying relationship.

M:N关系本身永远不会“识别”(或“非识别”),但可以包括识别或不识别1:N关系.

这不是关于识别任何端点(教师和主题模块),而是识别它们之间的连接.在这种情况下,它看起来从端点表迁移的密钥组合标识了连接(通过成为连接密钥的一部分):

因此,虽然M:N关系本身不是“识别”,但是由它组成的1:N关系是.

(您引用的工具UI可能只使用术语“识别M:N”作为上述简写.)

话虽这么说,你可以在这些迁移的密钥之上没有密钥的情况下离开连接:

它在技术上仍然是M:N,但现在允许重复连接(即同一个教师多次连接到相同的主题模块),在这种情况下,上面的1:N关系将不再是“识别”.

标签:mysql,database,database-design,erd

来源: https://codeday.me/bug/20190703/1364970.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值