我的访问数据库包含以下表:Person,Object和Sub .

Sub是Person和Object之间的关系表 . 一个对象最多可以有一个Person,一个Person可以有任意数量的对象 .

我有一个Person表单,显示Person和datasheet子表单的详细信息,显示Person的所有已分配对象 - 即Object的复合主键(两个字段)和Sub表中的两个附加列 .

到目前为止一切正常 . 我可以在Person表单中插入,更新和删除Sub分配 . 但是子窗体也应该显示Object表中的两列 . 如果我只是将子表单数据源设置为联接查询,我仍然可以插入记录但不更新现有记录:

您向表请求的更改未成功,因为它们将在索引,主键或关系中创建重复值 .

我已经尝试过使用外连接和子选择,但是我无法让它工作 . 我在设计视图中将对象列的文本字段更改为组合框,因此我可以使用单独的查询,但我只能输入一个有界列 - 但我有一个复合主键 .

如何在不破坏修改的情况下显示这两个附加列?