Mysql 实体关系:实线和虚线之间的差异

Mysql 实体关系:实线和虚线之间的差异,mysql,mysql-workbench,entity-relationship,Mysql,Mysql Workbench,Entity Relationship,在使用表关系时。实线和虚线的用法有什么区别 比如说 表:信息/ 表:用户 一个用户有0条或多条消息 实线还是虚线?正如注释中所述,虚线表示不可识别的关系 实线=>识别关系 mySQL文档中的定义:标识关系是指没有父表就无法唯一标识子表的关系。通常是这样 在创建中间表以解决问题时发生 多对多关系。在这种情况下,主键通常是 由两个原始密钥的主键组成的复合密钥 桌子 例如: 我们有一个应用程序,可以使用此模型注册员工的到达时间: user { id_user, name, department, jo

在使用表关系时。实线和虚线的用法有什么区别

比如说

表:信息/ 表:用户

一个用户有0条或多条消息


实线还是虚线?

正如注释中所述,虚线表示不可识别的关系

实线=>识别关系

mySQL文档中的定义:标识关系是指没有父表就无法唯一标识子表的关系。通常是这样 在创建中间表以解决问题时发生 多对多关系。在这种情况下,主键通常是 由两个原始密钥的主键组成的复合密钥 桌子

例如: 我们有一个应用程序,可以使用此模型注册员工的到达时间:

user { id_user, name, department, job } 
arrival_log { id_user, arrival_time, department }
每行到达都需要指定用户id。没有用户id,我们就不知道谁到了办公室。实体到达日志是一个弱日志,因为它依赖于其他实体的存在(用户)来工作

虚线=>非识别关系。

定义:非识别关系是指可以独立于父项识别子项的关系

例如:

flower( flower_id, flower_latin_name, flower_type_id )
flower_type( flower_type_id, name, description )

花卉和花卉类型之间的关系是不可识别的,因为每个花卉类型都可以识别,而不必存在于花卉表中。

参考完整性。请参阅:在MySQL Workbench EER图中,虚线表示非标识关系,实线表示一种识别关系:@PaulF你为什么把你的答案添加为评论而不是普通的答案?@MikeLischke:我只是把它看作是告诉OP阅读文档,这不是我应该得到的任何赞扬。我想我可以把它放在那里,这样就可以标记为已回答,以备将来参考。此外,文档在看到此so条目后进行了更新。希望现在更清楚一点。