Ms access 与Microsoft Access中的关系有问题

Ms access 与Microsoft Access中的关系有问题,ms-access,foreign-key-relationship,Ms Access,Foreign Key Relationship,在下图中,我希望“员工”、“Emp_项目”和“项目”之间的关系与“员工”、“Emp_技能”和“技能”之间的关系相似 目前,从“Employee”表中,我可以查看(通过单击“Employee”记录中出现的小“+”)与该“Employee”关联的“Emp_Skill”的任何实例以及相应“Skill”的描述 但是,当尝试对“Employee”、“Emp_Proj”和“Project”执行相同操作时,当我单击“Employee”记录中的“+”时,会出现一个对话框,要求我选择要插入的“subdatashe

在下图中,我希望“员工”、“Emp_项目”和“项目”之间的关系与“员工”、“Emp_技能”和“技能”之间的关系相似

目前,从“Employee”表中,我可以查看(通过单击“Employee”记录中出现的小“+”)与该“Employee”关联的“Emp_Skill”的任何实例以及相应“Skill”的描述

但是,当尝试对“Employee”、“Emp_Proj”和“Project”执行相同操作时,当我单击“Employee”记录中的“+”时,会出现一个对话框,要求我选择要插入的“subdatasheet”

选择任何一个可能的选项都意味着我只能看到那个选项

这是一个常见的、容易解决的问题,是因为我对数据库缺乏经验,还是不能做到

非常感谢您的帮助

提前感谢,, 奥苏·道格


在表视图中显示相关数据的方法被设计为探索关系的辅助方法。但每次只显示一个“孩子”关系


在我的数据库中,我倾向于禁用master/detail导航,因为Access会询问用户显示了什么关系。我建议您使用主/明细表,而不是表视图中的自动关系。

这有点离题,但为什么要首先使用映射表?既然你有一个1对1的每周技能和EMP_技能映射,为什么不直接映射员工和技能之间的1对多关系呢?然后,项目也是这样?这是我最初的想法——我很可能最终会这样做——但在我们的任务规范中,我们得到了一个ERD,显示了“员工”和“技能”之间的关系。我们被告知如果可以的话,试着摆脱多对多的关系,这是我能想到的最简单的方法。不太确定您在Access中遇到的实际问题,但您当前的设置不是真正的多对多关系。你应该将技能和EMP_技能之间的关系改为1对多,而不是1对1。。。然后复制它,或者投射一口井。您可能会发现,修改结构可能会消除您的问题。谢谢您提供的提示,但没有帮助。在我将“Employee”中的“Employee_ID”链接到“Emp_Skill”和“Emp_Proj”之后,在扩展记录时仍然会要求我选择一个“子数据表”(通过单击数据表视图中“Employee”记录旁边出现的小“+”);由于我对访问的“新特性”,我甚至还没有看过表单。那时候就做一些,现在一切都很好,谢谢你。