首页 文章

Combobox管理子表单可能更新表

提问于
浏览
0

我有一个表单,表单绑定到一个只返回一个字段的查询 . 在该表单上是一个组合框,绑定到查询字段,子表单对象和一些其他不重要的东西 . Form和Subform之间的Master-Child关系设置为相同的字段 . 目的是下拉组合框允许我在组合框中添加与该记录有关的子表单的信息(它是学校中的类列表,用于上下文) . 这是通过表单和子表单完成的,因为我有各种不同的任务需要为每个类完成 - 目的是能够在主窗体上选择一个类,然后使用它上面的命令按钮来选择打开哪个子窗体取决于我希望执行的任务 .

但是,组合框似乎正在尝试更新表 - 我不确定哪一个作为错误消息不是特定的:

您向表请求的更改未成功,因为它们将在索引,主键或关系中创建重复值 . 更改包含重复数据的字段或字段中的数据,删除索引或重新定义索引以允许重复值,然后重试

如果我从组合框中选择除第一个以外的任何值,然后单击子窗体上的第一个文本框,则会出现 . 但是,我可以在子窗体中单击选中的组合框中的第一个条目并成功添加数据,我已经检查过,它出现在基础表中 .

在我看来,作为Access中的一个相对新手,组合框在更改时尝试更新底层数据源,尽管它没有宏 . 我会假设表格或组合框的属性中有些项目可以防止这种情况发生,但我找不到它们 . 这只是猜测发生了什么,但我可能是错的 .

这可能与this question有关,但我也可能错在那里 . 无论如何,表单不应该能够更新/编辑/添加记录但如果我在其属性中设置允许编辑为"No"我无法从组合框中实际选择一个值 - 我已将其他"Allow"属性设置为"No"而没有问题 .

1 回答

  • 0

    如果您更改主窗体中的任何内容,然后单击子窗体,Access将尝试自动将数据保存在主窗体中 . 也许您可以尝试暂时将组合框与文本字段进行交换以进行测试 . 这应该可以帮助您澄清问题 .

相关问题