在Microsoft Access中,我们有一个本地表和一个链接表到SharePoint列表。
以下更新查询:
Update Linked
INNER JOIN Local on Linked.ID = Local.ID
Set Linked.TEXT_FIELD = Local.TEXT_FIELD
, Linked.CHOICE_FIELD = Local.TEXT_FIELD
, Linked.INT_FIELD = Local.INT_FIELD
...etc
给我们错误:
您无法更新此字段,因为您尝试应用的值无效或会破坏数据完整性规则。请更正并重试。
研究elsewhere我们find在限制查找字段中更改选项时发生错误。我们已经仔细检查了这些变化,但无济于事。此外,虽然某些字段中的选项可能已更改,但我们更新中的所有选项都是原始有效条目列表的一部分。总之:我们尝试更新的所有记录中的所有值都是目标列表上的有效选择。
我们尝试调试代码以隔离有问题的字段,但即使是单个字段更新也会出现相同的错误。即使在没有有效选择的单个字段的更新中也会出现错误,如:
Update Linked
INNER JOIN Local on Linked.ID = Local.ID
Set Linked.INT_Field = Local.INT_Field
我们尝试重新链接SharePoint列表。我们还删除了链表并手动重新添加。
毋庸置疑,这一直非常令人沮丧。我们非常感谢您提供的任何指导。
答案 0 :(得分:1)
根据我的经验,当您尝试更新的行中的其他字段包含“选择”字段中不允许的值时,或者甚至在这些字段 时,也会发生这种情况参考 旧(已删除)值。您可以看到在Access中打开数据库文件并单击这些字段时。
根本原因通常是在线删除SharePoint上的“选择”字段中的项目。
对我有用的解决方案是重新创建链接到SharePoint的Access数据库。
答案 1 :(得分:0)
我正在使用MS Office2019。我尝试将数据类型为“短文本”的文件更改为“长文本”。它为我工作。
答案 2 :(得分:0)
这可能是我第一次得到 100% 自信的答案。当尝试将数据输入到已为其创建标准的字段中时,确实会抛出该错误。例如,如果您为字段类型“选择”设置了选项,并且您尝试使用的条目不适合这些选项中的任何一个。 但这里的关键,也是我添加答案的原因是,抛出错误的领域不一定是您可能关注的领域。它可以是任何领域。 因此,请检查属于您输入的行的所有字段,而不仅仅是您当前关注的字段。