上表是“人”
上面是基于表“人物”的查询“国家/地区”的SQL视图
上图是基于“人”表的“国家/地区”查询的数据表视图
上面是另一个称为“城市列表”的表
为什么不能在“ Count Country”查询和“ City List”表之间建立一对多关系?
答案 0 :(得分:0)
您所描述的听起来像是级联(依赖)组合框。因此,如果没有国家(地区)表,则cbxCountry的RowSource可以为SELECT DISTINCT Country FROM CityList;
。然后,通过cbxCountry SELECT City FROM CityList WHERE Country=[cbxCountry];
过滤的cbxCity的RowSource。当移至另一条记录和/或更改cbxCountry中的选择时,您将需要代码来重新查询cbxCity。
如果要显示不同国家/地区的表单,则RecordSource可以是相同的DISTINCT查询。然后编写代码以打开关联城市的表单:
DoCmd.OpenForm "Cities", , , "Country='" & Me.Country & "'"
答案 1 :(得分:0)
您只能在表之间创建具有引用完整性的关系。此外,两个字段都必须具有相同的数据类型,并且左侧的字段(拖动到另一侧的字段)必须是该表的主键(或者至少具有唯一的索引,不允许为Null值)。
创建没有引用完整性的关系的唯一原因是告诉Access数据如何关联,因此,当您将两个表(如您所用的表和查询)都添加到表中时,Access会自动将它们连接在一起。查询。另外,Access在处理数据表时可能会自动创建一个“子数据表”。
要“自动”构建跳转到城市的表单,请使用表单向导并在查询和表格中添加字段。