基于多对多关系创建访问下拉列表

Posted

技术标签:

【中文标题】基于多对多关系创建访问下拉列表【英文标题】:Create an access dropdown based on a many to many relationship 【发布时间】:2021-09-13 20:59:06 【问题描述】:

我有一个数据库,其中包含有关音频文件的数据。 主要的三个表是 Volume、Author 和 VolumeWithAuthor。一个卷可以有多个作者,一个作者可以有多个卷,因此它们每个都与 VolumeWithAuthor 表具有多对一的关系。

They look like this:  
   Volume:  
      ID- set to autonumber  
      Volume- the name of each file   
   Author:  
      AuthID- autonumber  
      AuthName- a string with the author name  
      AuthTitle- Dr., Mr. or Mrs., etc.

They are joined on the VolumeWithAuthor:
      ID- autonumber
      Volume- linked to Volume.Volume
      AuthID - linked to Author.AuthID

我有一个链接到 Volume 表的表格。用户需要能够在该表单上输入作者。所以下拉列表必须显示来自 Author.AuthName 的条目,然后在 VolumeWithAuthor 中创建一个新条目。 我创建了一个子表单,显示每个录音的所有作者,但我不知道如何添加下拉列表。

我认为这可能是相当基本的问题,但我没有看到任何类似问题的答案对我有用。 谢谢

【问题讨论】:

您的意思是需要在 VolumeWithAuthor 中输入作者吗?建议不要在多个表中使用完全相同的字段名称。 【参考方案1】:

也许只是你的叙述中的一个错字,但需要为 VolumeWithAuthor 选择作者,而不是 Volume。

数据输入选项:

    主表单绑定到 Volume,子表单绑定到 VolumeWithAuthor,并带有一个用于选择作者的组合框

    主窗体绑定到作者,子窗体绑定到 VolumeWithAuthor,并带有一个用于选择卷的组合框

    一种绑定到 VolumnWithAuthor 的表单,带有用于选择卷和作者的组合框

使用组合框 Not in List 事件在数据输入期间即时向这些表中添加新作者或卷。

【讨论】:

以上是关于基于多对多关系创建访问下拉列表的主要内容,如果未能解决你的问题,请参考以下文章

多对多实体框架和存储库模式插入/更新

如何为多对多关系创建 UI?

MVC 多对多仅在代码中首先获取具有某种类型的实体

查询显示多对多关系中的关联列表

Prisma:在显式多对多关系中创建或连接记录

角度将列表值传递给 JSON 主体 - .Net Core 和多对多关系