database - 我正在尝试使用子表单/弹出表单在 MS Access 的子数据表中填充数据
问题描述
情况是这样的:我正在构建一个 MS Access 数据库,供我的人口健康部门使用,以管理对 COVID-19 隔离人员的呼叫数据。在接收期间,他们会询问家中是否有同居者。在后续电话中,他们会询问同居者的状况。
我有一个用于捕获所有摄入数据 (FullTable_frm) 的表格,以及一个名为 Cohabitants 的附加表格。同居者是我的主要人口统计表中的一个子数据表。我想使用案例编号 (CaseID) 来涵盖家庭的主要成员以及任何同居者。我的目标是使用 Cohabitants 表单作为弹出窗口,如果选中 FullTable_form 上的复选框,它将打开弹出窗口,可以在其中为家中的任何同居者输入记录。
我尝试执行此操作的每一种方式,我都会收到错误消息,“您无法添加或更改记录,因为需要相关记录......”我在 FullTable 和 Cohabitants 表之间有 1:many 关系,并且表格视图将同居者显示为子数据表,我可以直接在其中输入数据。
关于我可能出错的地方以及如何解决它的任何想法?
解决方案
这只是根据您的示例快速创建一个简单的工作访问数据库的演练。表格结构很糟糕,但如果没有更多细节,我们无法提出更合适的东西,所以我们提到它并继续前进。首先创建两个表:
接下来转到databasetools-relationships。摆弄直到你得到类似于上述关系的东西。关键是在 FullTable 中有 CaseID 并将其链接到 Cohabitants 表中的 CaseID。您可以通过将 Case ID 从 Full Table 拖动到 Cohabitants 表来执行此操作(编辑关系弹出对话框的外观图片)
完成后关闭关系窗口并单击同居者表。然后转到屏幕顶部并单击创建然后形成。(在创建完整表格之前创建关系和同居者表格很重要。)
同居者表格已完成。现在单击 FullTable 并重复以获取 fulltable 表单。
请注意,如果您已经建立了关系并且同居者表单 Access 会自动将同居者表单添加为子表单,那么您就完成了!继续使用完整表格表单一侧的记录选择器,了解如何将数据添加到表格并滚动浏览该数据。如果出现问题,请确保您在 FullTable 和 Cohabitants 之间建立了关系,然后您可以通过在设计模式下将 Cohabitants 表拖到 fulltable 表单上来将 cohabitants 子表单添加到 FullTable 表单。
注意:这里的 CaseID 既是主键也是自动编号,因此每次用户添加数据时,访问都会在后台填充它。如果您不控制 CaseID,则必须能够输入 CaseID,但如果访问正在跟踪并分配 CaseID,则只需删除或使 CaseID 在表单上只读。
PS 如果子表单不工作,请在设计模式下打开 FullTable 表单,然后单击子表单。确保将链接主字段和链接子字段设置为 CaseID。
推荐阅读
- css - 下拉菜单导致滚动
- java - 如何在简单的 Spring Boot 应用程序中使用嵌套的对象数组反序列化 Json
- google-sheets - 谷歌表格迷你图跟踪一个财政年度内的项目进度
- ios - 通过点击按钮动态根据 UITextView 的 isScrollEnabled 展开和折叠 UITableView 行
- barcode - 这是什么类型的条形码散列/加密
- vim - NeoVim 插件未安装。(使用 vim 插件)
- javascript - 我的 shuffle 函数以单数形式工作,但是当将多个调用组合成一个函数时,它会中断
- scala - 当你可以使用可变类型的 val 时,为什么还要使用 var 呢?
- javascript - 如何从 Javascript 显示和生成 XML
- c# - 如何通过 API 传递三个参数并相应地检索信息