我在Access 2007中遇到了一对链接表的问题。我的目的是在一个上创建一个新记录并让它在另一个上生成一个新记录。也许我高估了Access中关系的能力,但我将它们设置如下:
所以表'Contracts'和'States'之间的关系是一对一的,设置为强制引用完整性,级联更新相关字段,并且只包括相等的位置(我也尝试使用仅包含来自[合同]至[国家])。
我有一个表单供用户输入Contracts.ContractID(和其他信息),但States.ContractID没有更新(表单控件确实更新了Contracts.ContractID),或者更确切地说没有新记录在桌子上创建。
我预计我可能会尝试完全错误地完成此操作。有助于我形成更好的表格布局的帮助将是首选,但更好的输入方法也会有所帮助。
(如果对这些表的键控方式有额外的考虑,请告诉我,因为ContractID是来自其他资源的继承密钥。)
答案 0 :(得分:1)
你是对的。关系不会像你认为的那样发挥作用。简而言之,当我在任何SQL dbms中向 this 表中插入一行时,没有“自动在一个不同的表中插入一行”。在某些情况下,您可以自己编写此类功能。我预计我可能会尝试完全实现这一目标 不正确。
在Access中,最好的办法是使用form and a linked subform。此方法将自动插入密钥(链接)列,用户将填写其余数据。