我使用的数据库包含一个Staff表和一个Groups表,我尝试做的是让每个员工都成为许多团队的成员,每个团队可以包含多个员工,多对多的关系。我还有一个连接两个连接表(下面是我的表结构)。 Staff和Groups表都与Group Staff表有一对多的关系。
员工表
Staff ID
First Name
Last Name
组表
Group ID
Group Name
集团员工表
Group Staff ID - PK
Group ID - FK
Staff ID - FK
我尝试做的是在群组表中,我有一个名为"会员"其中应包含作为该组成员的所有员工(从员工表中查找)。我使用查阅字段显示所有工作人员。问题是我不能为每个组选择多个员工,这是我需要的。
如果我尝试将查询字段更改为"允许多个值"然后它告诉我,由于员工和集团表之间的关系,我不能,但当然我需要这种关系才能查找员工。
那么我怎样才能做到这一点我可以在Group表中有一个查找字段,允许我从Staff Table中选择多个Staff?任何帮助表示赞赏。
答案 0 :(得分:0)
你不能按照你所描述的方式去做。
使用Group
和Staff
表,如果您想要多对多关系,那么您(如您所述)必须有一个连接表(GroupStaff
)。但是,您无法在Group
或Staff
表格中真正创建关系。
您必须在GroupStaff
表中创建新行。您可以一次手动执行此操作,如果我正在创建应用程序,我通常会有一个包含两个子表单的表单。在这种情况下,父表单将绑定到Group
,子表单将分别绑定到Staff
和GroupStaff
。然后,您可以添加控件(按钮),以便根据GroupStaff
表单和Group
子表单中选择的记录向Staff
表添加记录。
还会过滤GroupStaff
子表单,以仅显示与当前父组中的组相关联的记录。