【问题标题】:Access to SharePoint Update Query - "Value Is Not Valid Or Would Break Data Integrity Rule"访问 SharePoint 更新查询 - “值无效或会破坏数据完整性规则”
【发布时间】:2022-03-30 20:31:05
【问题描述】:

在 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

给我们错误:

您无法更新此字段,因为您尝试应用的值无效或会破坏数据完整性规则。请更正并重试。

研究elsewherefind 在受限查找字段中更改选择时会发生错误。我们已经搜索了列表以寻找这些更改,但无济于事。此外,虽然某些字段中的选择可能已更改,但我们更新中的所有选择都是原始有效条目列表的一部分。总之:我们试图更新的所有记录中的所有值都是目标列表上的有效选择。

我们已尝试调试代码以隔离违规字段,但即使在单个字段更新时也会出现相同的错误。即使在更新没有有效选择的单个字段时也会发生错误,例如:

Update Linked 
INNER JOIN Local on Linked.ID = Local.ID
Set Linked.INT_Field = Local.INT_Field

我们已尝试重新链接 SharePoint 列表。我们还删除了链表并手动重新添加。

不用说,这非常令人沮丧。您可以提供的任何指导将不胜感激。

【问题讨论】:

    标签: validation ms-access sharepoint sharepoint-2010


    【解决方案1】:

    根据我的经验,当您尝试更新的行中的其他字段包含“选择”字段中不允许的值时,甚至当这些字段参考旧的(删除的)值。当您在 Access 中打开数据库文件并单击这些字段时,您可以看到。

    根本原因通常是删除 SharePoint Online 上“选择”字段中的项目。

    对我有用的解决方案是重新创建链接到 SharePoint 的 Access 数据库。

    【讨论】:

      【解决方案2】:

      我使用的是 MS Office 2019。我尝试将数据类型为“短文本”的文件更改为“长文本”。它对我有用。

      【讨论】:

      • 这是一个建议,不是解决方案。
      【解决方案3】:

      这可能是我第一次得到 100% 自信的答案。当尝试将数据输入到已为其创建标准的字段中时,确实会引发错误。例如,如果您为字段类型“Choice”设置了选项,并且您尝试使用的条目不适合任何这些选项。 但这里的关键,以及我添加答案的原因是,引发错误的字段不一定是您可能关注的字段。它可以是任何领域。 因此,请检查您正在输入的行中的所有字段,而不仅仅是您当前关注的那个。

      【讨论】:

        【解决方案4】:

        我找到了适合我的解决方案;事实证明,在 Sharepoint 上设置列表已经创建了许多列,名称为现有列,前面有下划线。

        我删除了那些,它又起作用了。

        希望这会有所帮助。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-02-29
          • 1970-01-01
          • 1970-01-01
          • 2019-09-26
          • 1970-01-01
          • 2020-09-29
          相关资源
          最近更新 更多