MS Access:如何使用表单填充其他子表单中的其他字段?

时间:2017-05-16 06:25:16

标签: database forms ms-access subforms

我有以下表格,其中包含常见的字段。例如

分支表

  • 零售商ID(PK)
  • 零售商名称
  • 地址1
  • 地址2

内部表

  • 零售商ID(PK)
  • 零售商名称
  • 内部ID

银行账户

  • 零售商ID(PK)
  • 零售商名称
  • 银行代码
  • 银行帐号

我使用分支表创建了一个“主”表单,并将内部表和银行账户的形式包括为子表单。我的目的是让用户键入零售商ID和零售商名称字段,以防止重复手动输入相同的字段。在Property Sheets下,我使用Link Master Fields和Link Child Fields链接了这些字段。但是,表单似乎没有按预期执行。

输入分支表(主表)的测试数据后,转到内部表的字段会导致以下错误:

“Microsoft Access数据库引擎无法在表中找到包含键匹配字段的记录。(错误3101)”如此解释“在一对多关系中,您输入了”很多“的数据“one”一侧没有匹配记录的一侧。例如,如果您在CustomerID字段上加入Customers表和Orders表,然后使用Customer中不存在的CustomerID添加订单,则会发生此错误表“。

因此,我不能自动为其他表添加另一个条目。

1 个答案:

答案 0 :(得分:0)

子表的字段零售商ID 不能是PK。

在这些表中创建另一个字段(自动编号)作为PK。

然后转到数据库工具,关系的GUI设计器,并使用零售商ID 字段在Branch表和两个子表之间设置参照完整性。现在,这些将在子表中将FK保存到主表。