1

这有点尴尬,但已经有一段时间了。

当使用关系数据库并通过主键链接到单独的表时:外键,1-∞,这样,在一个特定的表中,表的外部关系返回一个整数 ID......你如何使这种关系易于理解用户?

例如:

你有一张公司

  • 客户识别码
  • 公司名
  • 公司位置
  • 公司业务类型

等(不是实际的列名)

和一张员工

  • 开斋节
  • 出生日期
  • 电子邮件
  • 公司

员工公司与 CID 相关。但是由于关系的性质,一些输入员工信息的用户必须知道特定公司的 ID 代码。您可以运行查询以返回“CompanyName”及其关联的“CID”,然后可以对其进行搜索,但这种密码并不是一个理想的解决方案。我只是不记得一个人如何解决这个问题的理论,即使我确定我以前做过。我需要在 Microsoft Access 2010 和 Microsoft SSMS(单独的数据库 fwiw)中实现它;但是只要我记得它是如何完成的,执行就应该相对简单!

4

2 回答 2

3

创建一个包含 2 列的组合框。一列作为公司名称,另一列作为公司 ID。如果您不希望用户看到,可以将公司 ID 的宽度设置为 0。

这可以通过 MS-Access 表单上的属性表来完成

将组合框的 Row Source 设置为: SELECT CompanyName, CompanyID FROM Company;

将组合框的控制源设置为:Employee.CompanyID

还要确保将行源类型设置为Table/Query

于 2012-07-31T14:47:01.457 回答
0

如果您需要多对多关系(许多员工属于许多公司),那么您将需要另一个表CompanyEmployees,如下所示:-

多对多关系示例

如果员工只属于一家公司,那么这种结构就可以了:-

简单的关系

在任何一种情况下,您都需要在添加/编辑用户以将用户与一个或多个公司关联时,向用户显示某种形式的下拉列表。

于 2012-07-31T14:26:39.023 回答