在表单中为同一记录输入多个地址的最佳方式?

时间:2016-10-18 18:08:22

标签: database forms user-interface ms-access

所以我一直在开发一种使用表单和子表单访问的数据输入平台。

我有一张名为PHYSICIAN的表格。每个医生都会有基本数据,如姓/名,DOB,职称,合同日期等。我想要涵盖的方面是地址,因为它们可能有多个,因为它们可以在2或3甚至10个工作/练习不同的地点。

每次他们需要添加地址时,我都不想让我们的数据输入团队密钥在完整记录中,我希望表单能够保留与地址无关的所有信息。

因此,如果Ken Bone在7个地方工作,我想让他们比创建新记录更有效地键入所有这些地址。

我遇到了一个主要问题---子窗体或自动填充选项不一定会增加记录的自动编号ID(主键)。所有信息都存储在1个主表中。

有没有办法围绕这个或更合乎逻辑的方法,你们可能会建议?

1 个答案:

答案 0 :(得分:0)

我建议您有几张表,甚至可能有三张。

<强> tblDoctorInfo   - Dr_ID  - 名称   - DOB   - 标题

<强> tblAddresses   - AddressID  - 地址1  - 地址2   - 城市   - 国家  - 压缩   - 国家

<强> tblDr_Sites   - DrSites_ID   - Dr_ID   - AddressID

表格可能包含这样的数据。

<强> tblDoctorInfo

1,Bob Smith,1989年12月3日,所有者

2,Carl Jones,1/2/1977,CEO

3,Carla Smith,1980年5月3日,ER Surgeon

<强> tblAddresses

1,123 Elm St,Fridley,MN 55038

2,234th St,Brookdale,MN 55412

3,5 Parl Ave,Clinton,MN 55132

<强> tblDr_Sites

然后您可以将表与第三个表相关联。 (注意三个表中的每一个都有一个递增的ID字段。)

1,1,1此记录表示Bob博士在弗里德利工作

2,1,2此记录表示Bob博士在Brookdale工作

3,3,1这一记录意味着卡拉博士在弗里德利工作

4,2,3此记录意味着Carl博士在克林顿工作

5,2,2此记录表示Carl博士在Brookdale工作

6,2,1此记录表示Carl博士在弗里德利工作