我的两个表在我的数据库问题中相互作用; tblCountry_Language
和tblTerritory_Country
。
tblCountry_Language
是一种母婴关系,其中一个国家/地区可以使用多种语言。
tblCountry_Language
包含CountryID
,LanguageID
和TerritoryID
列。
tblTerritory_Country
也是一个父母与子女的关系,其中一个地区可以有多个国家。
tblTerritory_Country
只有TerritoryID
和CountryID
列。
记住这些信息,让我们看一下我构建的表单:
外部表单位于国家/地区和地区的前两个组合框中,是tblTerritoryCountry
中记录的轮播。
其中的子表单来自tblCountry_Language
,并且当前由CountryID
连接到主表单。
I.E.,我在子表单中填写的每种语言都将记录与容器表单所在的国家/地区tblCountry_Language
。
正如我所说,CountryID
的关联关系在我的tblCountry_Language
中成功记录了该国家。
我如何制作以便区域也可以记录在我的tblCountry_Language
? IE中,我可以同时获得国家和领土记录在表格中。
答案 0 :(得分:0)
没有必要在tblCountry_Language中记录TerritoryID,实际上这样做是错误的,因为它违反了数据库规范化原则。您可以使用查询来显示语言区域信息。 SQL如下
Select Distinct LanguageID,TerritoryID from
tblCountry_Language INNER JOIN tblTerritory_Country
ON tblTerritory_Country.CountryID=tblCountry_Language.CountryID
另外,我建议将tblTerritory_Country重命名为tblCountry
我假设您还有tblLanguage和tblTerritory作为您在问题中提到的其他两个表的查找表。如果不是,我强烈建议您创建它们并将tblCountry_Language和tblTerritory_Country中的LanguageID和TerritoryID分别更改为查找字段。