1

所以这个问题的根源可能在于糟糕的数据库设计,一些设置方式是从旧版本继承而来的。我只是想不出更好的方法来做到这一点。

我有四个由同一字段链接的表:[OBJECTID]。每个表都链接到控制数据的访问表单。重要的是这些表是分开的,因为数据是地理参考的并且需要单独映射,但是默认情况下它们会相互继承多个字段。

大多数情况下,表是一对一的关系,但偶尔只有第一个表的数据,偶尔只有第二个、第三个和第三个表的数据。第四种形式。

现在,第一个表中的 [OBJECTID] 字段设置为数据类型自动编号,以便其他表中的所有后续链接记录都可以继承该编号。对于 Tbl1 中的记录不是通过 Form1 输入的情况,很容易分配一个与任何当前编号不冲突的编号,但是如何避免分配一个可能与将来生成的 [OBJECTID] 冲突的编号通过 Tbl1 中的自动编号字段?

对不起,如果这令人困惑!提前感谢您帮助我思考这个问题......

4

1 回答 1

0

如果设计正确,tbl1 和表 2/3/4 之间应该存在参照完整性关系。既然你提到这occasionally, there is only data for the second, third and fourth form意味着我们在这里没有参照完整性:-/。

我将确定所有 4 个表共有的字段,并用这些字段创建一个“主”表,这意味着必须填写主表。然后,您使用外部连接创建与其他 4 个表的 1 到 0,1 关系,它们的 PK 蜂鸣然后是 Long Integer。

对于表格 1 到 4 的来源,请在 MainTable 和 T1/2/3/4 之间使用外连接。然后,“子表”将继承主表的 PK。

希望我不要太晦涩。

于 2012-03-19T20:45:11.867 回答