您不能添加或因为相关记录表中需要更改记录(You cannot add or change a re

2019-09-17 17:05发布

我是相当新的访问。

我有一个需要进行归一化一个数据库表。 我对一个人的一些信息。 这些人被授权在我们的工作现场访问权限授予地方。 每个人都可以被授权几次来管理不同的领域,当然不同的人可以被授权来管理不同的领域。 我的第一次尝试是包括授权和地区在一起,但我意识到,我真的重复数据的方式。 做了一些研究之后,我决定,要做到这一点的最好办法是建立4桌

tblPerson,tblPermission,tblArea,tblArea_Permission

该tblArea_Permission是tblPermission和tblArea之间的许多一对多关系的连接表(这一点是我刚刚得知)。 我貌似设置表关系的关系标签就OK了。 我还使用了查询添加记录的连接表。 当我尝试这样做,与从表中获取记录的查询时,我得到“你不能添加或因为相关记录表XXX需要更改的记录。” 这似乎是不可能的。

我决定,我很可能与DB不强制引用完整性生活,把这种美丽,并使用了联合主键两个记录,因为每个人有权限将只在一个组合来控制的区域。 这似乎工作,但后来我发现,该记录将随机变化。 我决定,DB必须是已损坏。 DB的部分似乎正常工作,所以我开始一个新的数据库和导入的表和一个表格,然后开始如上所述,重建新表。 我得到了同样的错误。

任何帮助将不胜感激。 我已经通过了一些不同的书籍阅读,并使用谷歌,但没有解决这一点。

Answer 1:

如果一个人被授权管理的领域,你需要一个persons_area表:

PersonID ) Primary key
AreaID   )

这表明该地区的人可以管理。 我不知道在哪里的权限表是从哪里来的。

然后,您将无法将记录添加到person_areas表,除非你有在该地区的表中的ID,并在人员表中的ID。 如果这些ID的丢失,您将得到上述错误。

如果你想在你的数据库的设计更相关的评论,您将需要发布模式。



文章来源: You cannot add or change a record because a related record is required in table