加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

ms-access – 在Microsoft Access 2010中创建关系时“表上的索引

发布时间:2020-12-14 04:17:11 所属栏目:Windows 来源:网络整理
导读:我有tblUsers,其主键是UserID. UserID在许多表中用作外键.在表中,它用作多个字段的外键(例如ObserverID,RecorderID,CheckerID). 我已经成功添加了关系(在MS Access’关系’视图中),其中我有表别名来执行每个表的多个关系: * tblUser.UserID – 1对多 – tbl
我有tblUsers,其主键是UserID.

UserID在许多表中用作外键.在表中,它用作多个字段的外键(例如ObserverID,RecorderID,CheckerID).

我已经成功添加了关系(在MS Access’关系’视图中),其中我有表别名来执行每个表的多个关系:

* tblUser.UserID – > 1对多 – > tblResight.ObserverID

* tblUser_1.UserID – > 1对多 – > tblResight.CheckerID

在创建了大约25个与参照完整性强制执行的关系后,当我尝试添加另一个时,我收到以下错误:

“操作失败.表’tblUsers上有太多索引.’删除表上的一些索引并再次尝试操作.“

我运行了我发现的代码here,它返回我在tblUsers上有6个索引.我知道每个表有32个索引的限制.

我使用关系GUI错了吗?是否在我创建关系时(特别是在运行脚本时不会出现的索引)访问是否为执行引用完整性创建索引?我有点困惑,任何帮助都会受到赞赏.

好的,经过一些研究,我想我得到了这个问题的答案.显然,这是一个非常普遍的天花板,可以访问.我总结一下 this post我在下面找到:

每个表只能有32个“约束”.参考完整性(RI)的每个索引和强制执行都计入此32.当您选择强制执行RI时,MS Access会自动创建约束.你无法禁用此选项.

所有代码snipets和我通过谷歌找到的东西,返回我在桌子上有六个索引(因此我感到困惑).我没有发现/不知道的是,我的25个关系被计算在我的32岁之间,因为我执行了RI.

我对此的解决方案是将RI放在“较低优先级”字段上(这让我很难说),并通过数据输入表单“强制”它.

基本上,这是我即将迁移出访问并进入PostgreSQL的另一个原因.

如果有人有更好的工作,我很乐意在这里.谢谢.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读