在数据库的两个表之间可以建立两个或以上的一对多关系吗?
如一个连锁企业,建立一个分店信息表(店编号,店经理ID,区经理ID,部长ID),一个员工表(员工ID,员工姓名),一个经理管理一个店,一个区经理管理多个分店,一个部长管理...
如一个连锁企业,建立一个分店信息表(店编号,店经理ID,区经理ID,部长ID),一个员工表(员工ID,员工姓名),一个经理管理一个店,一个区经理管理多个分店,一个部长管理多个区。那么员工表的经理与分店表有一对一关系,员工表中的区经理和部长与分店表有一对多关系。这样两表之间共有三个关系。建立这样的关系是允许并符合规范的吗?
展开
若以下回答无法解决问题,邀请你更新回答
1个回答
展开全部
是允许的,看你从哪个角度去理解。
追问
有些什么角度?
这样做分店表就有三个外键且三个外键同属于一个表(员工表)的主键。我在ACCESS中这样创建关系时,员工表在关系图中自动变成三个,各有一条线与分店表相连,这只是为了显示上清晰一点(实际上还是只有一个员工表)还是ACCESS确实把员工表复制了两次建了两个隐藏的表?
追答
比如你以分店表为主表,对应的SQL如下
select * from 分店信息表 t
left join 员工表 t1 on t.店经理ID=t1.员工ID
left join 员工表 t2 on t.区经理ID=t2.员工ID
left join 员工表 t3 on t.部长ID=t3.员工ID
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询