数据库建立中间表的意义
中间表的使用,使得各个实体表之间相互独立,降低各个实体表之间的耦合性;在企业开发中,不提倡在从表中建立外键来关联主表,因为那样的话,主表与从表的数据耦合性太高,不灵活;所以使用中间表来存储实体表之间的关联后的组合数据。
·
数据库建立中间表的意义
中间表的使用,使得各个实体表之间相互独立,降低各个实体表之间的耦合性;
在企业开发中,不提倡在从表中建立外键来关联主表,因为那样的话,主表与从表的数据耦合性太高,不灵活;
所以使用中间表来存储实体表之间的关联后的组合数据
用户表与角色表之间的关系为一对多
我想查询id为2的用户所对应的多个角色;sql语句为:
SELECT r.*
FROM t_user_role ur LEFT JOIN t_user u ON u.id=ur.user_id
LEFT JOIN t_role r ON r.roleId=ur.role_id
WHERE ur.user_id = #{id};
用户和角色是一一对应的关系,为什么不直接在用户表中加一个角色的字段,而是另建一个中间关系表?
我的理解是一个用户可以有多个角色啊
是这样的:
一个人 可以拥有 多个角色
一个角色 也可以被多个人使用
多对多的关系 一般情况下是 需要建一个中间表去映射的。
更多推荐
已为社区贡献1条内容
所有评论(0)