12

我是新手(我只有 2003 版),我快疯了。还要考虑到我一般是 DB 的新手,所以现在我很困惑......请帮忙。我正在尝试设计一个数据库来对我拥有的所有书籍进行分类。我创建了表格并设置了关系我的数据库的图像 ; 我有一些与“书籍”相关的表格,其中一个是多对多关系(例如作者:每本书可以有多个作者,每个作者可以“拥有”多本书),还有一些其他的表格在一个简单的一对多关系中。许多(例如书籍类型:一本书只能属于一种类型,但可以有许多该类型的书籍。现在我想创建一个表单(如果需要,可以使用子表单)来填充我的表格。我想能够添加新书并从现有作者中进行选择或重新添加作者;对于一对多关系中的数据也是如此。

我怎样才能做到这一点?

我真的迷路了,我是否需要多个表单并将它们添加为主要表单的子表单,我需要查询,还是什么?

4

1 回答 1

20

上述设计需要四个子窗体。每个子表单都应基于以书 id 作为链接子字段和主字段的联结表,以及基于第二个表 id 的相关表的组合框。

例如,您的第一个子表单是 Authors,它所基于的表是 Libri_Autori

Link Master Field: Id
Link Child Field: SchedaLibro

组合框:

Control Source: SchedaAutore
Row Source : SELECT Id, Nome FROM Autori
Bound Column: 1
Column Count : 2
Column Widths : 0, 2

创建您的图书表单,然后开始添加子表单,向导将为您完成大部分工作。

要将记录添加到 authors 表中,您需要将 Limit To List 设置为 Yes 并在 Not In List 事件上运行代码。我喜欢使用一个小的弹出表单将项目添加到“背景”表中。使用 Access 2010 可能会更容易,因为您可以设置ListItemsEditForm


1、书本窗体,就在添加子窗体之前。请注意,选择了使用控制向导。这是默认设置,所以除非您取消选择它,否则应该没问题。

步骤 1 使用向导

添加子表单的各种向导步骤 添加子表单的向导步骤

选择子表单域

选择子表单域

选择链接子字段和主字段

选择链接子字段和主字段

显示以黄色突出显示的子窗体控件和控件属性的窗体

子控制

2、添加组合

您可以通过右键单击并自己设置属性来将子表单向导添加的字段更改为组合...

右键单击以更改为组合

...或者您可以删除现有控件并使用向导添加组合。第一步是选择组合的类型。

步骤 1 组合类型

第二步是选择表或查询

步骤 2 选择表或查询

第三步是选择字段

步骤 3 选择字段

第四步选择排序顺序这里不显示,这是第五步,就是设置列宽

第 4 步跳过,第 5 步设置列宽

第六步是设置控制源

Step 6 设置控制源

您最终将得到一个包含所示属性的组合框

子表单组合和属性

最终形式

最终形式

于 2012-08-26T17:13:00.143 回答