将表单中的数据输入到联结表 Microsoft Access

Posted

技术标签:

【中文标题】将表单中的数据输入到联结表 Microsoft Access【英文标题】:Inputting data from a form into a junction table Microsoft Access 【发布时间】:2017-01-09 17:15:08 【问题描述】:

在访问中,我想要一个可以将数据输入到联结表中的表单。关系如下。

一个表格包含植物名称和植物的基本信息,另一个表格包含土壤水分含量,另一个表格包含可能发现某些植物的县名。一种植物可能在许多县中发现,而许多植物可能在一个县中发现。水分也是如此。因此,这个数据库需要多对多的关系。如何制作一个包含plantID 以及该植物的县和湿度并在连接表中形成条目的表格?我是否以适当的方式解决这个问题?

【问题讨论】:

【参考方案1】:

假设您只需要从这个表单向联结表添加记录,构建一个与联结表绑定的表单。

如果您使用向导,您的新表单应将每个字段列为文本框。

对于作为外键的每个字段,将文本框更改为组合框。使用行源属性从 PK 所在字段的专用表中提取信息。

例如,MoistureID 将成为一个组合框,其行源为:

SELECT MoistureID, Moisture
FROM Moisture;

ID 字段随后将成为组合框的输出,但会在列表打开时显示 Moisture 字段。您可以通过将“列宽”属性更改为0";1" 来向用户隐藏 ID 字段,但请确保“列数”属性 = 2。

然后您可以将表单的数据输入属性更改为“yes”以从表单视图中隐藏现有的联结记录。

在表单视图中,选择您的工厂 ID 和其他选项,一旦您的 Tab 键超过了表单的 Tab 键顺序的末尾,您的联结记录应该附加到联结表并且表单的控件应该清除。

如果您需要将此表单中的记录添加到其他表,那么您将需要构建一个未绑定的表单并使用宏或 VBA 处理追加。

【讨论】:

谢谢。有没有一种方法可以适用于用一个表格添加多个县条目?例如,我想添加在约翰逊县和安德森县发现的干湿两用玫瑰。一个表格可以添加所有这些信息吗?如果没有,是否有其他解决方案? 如果县、湿度和植物 id 已经存在,则此表格需要每个组合输入一个。一次附加多个组合需要使用带有未绑定表单的宏或 vba。这是可能的,但相当复杂。对湿度和县域字段使用多选列表框可以为您提供所需的数据和功能,但编码逻辑需要有关您在数据模型中使用的规则的更多信息,因此我无法真正指定解决方案。

以上是关于将表单中的数据输入到联结表 Microsoft Access的主要内容,如果未能解决你的问题,请参考以下文章

将所有记录插入到 Symfony 中的联结表中

mysql联表查询,使用phpStudy自带的

仅使某些查询字段可编辑

通过表单从 Access 联结表中删除行

尝试使用注册表单中的 PHP/Html 将数据输入 SQL 表

从 2 个联结表中提取数据的查询