Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ms access Microsoft Access链接表(ASE)出现触发器错误_Ms Access_Triggers_Odbc_Ms Access 2016_Linked Tables - Fatal编程技术网

Ms access Microsoft Access链接表(ASE)出现触发器错误

Ms access Microsoft Access链接表(ASE)出现触发器错误,ms-access,triggers,odbc,ms-access-2016,linked-tables,Ms Access,Triggers,Odbc,Ms Access 2016,Linked Tables,在Microsoft中,我可以访问ASE服务器的链接表。 在服务器端,表没有主键或标识列。 并且在insert上有一个触发器,用于验证新条目,因此当条目未经验证时,它会从表中删除条目并写入“table”\u ERR,以让用户知道产生了什么错误 链接它以访问时,将使用10列创建复合键 我在10个不同的表中有相同的设置(所有表都有链接到Access的触发器) 在这个特定的表中,当尝试通过Access向表中插入/追加记录时,我始终会收到错误消息: 单行更新/删除影响链接表的多行。唯一索引包含重复的值

在Microsoft中,我可以访问ASE服务器的链接表。 在服务器端,表没有主键或标识列。 并且在insert上有一个触发器,用于验证新条目,因此当条目未经验证时,它会从表中删除条目并写入“table”\u ERR,以让用户知道产生了什么错误

链接它以访问时,将使用10列创建复合键

我在10个不同的表中有相同的设置(所有表都有链接到Access的触发器)

在这个特定的表中,当尝试通过Access向表中插入/追加记录时,我始终会收到错误消息:

单行更新/删除影响链接表的多行。唯一索引包含重复的值

当table和table_ERR都为空并且我只尝试插入一条记录时,就会发生此错误

如果禁用触发器,则通过Access插入记录不会有问题

我在其他表中有类似的触发器,它们工作正常。 是什么导致了这个问题?有人知道如何解决这个问题吗

我曾读到MS Access会弄乱@标识,即使如此,在线提供的任何解决方案似乎都不起作用

链接:

提前谢谢


编辑:如果我尝试直接从管理软件(如Aqua Data Studio)插入记录,在不了解数据本身的更多细节的情况下,不会出现错误,很难说为什么会发生这种情况

但是,在这个特定链接表的特定实例中,您的10列不够唯一,无法阻止选择非不同的行

建议的修复方法:

  • 添加一个主键。老实说,这可能是最好最简单的选择
  • 如果由于某种原因,无法向表中添加(或更改)新列;您可以重新链接表,并重新选择10列,使它们更加独特
  • 除此之外,我认为我们还需要更多的信息

  • 只是出于好奇,没有键的原因是什么?

    表没有键,但它只使用了一个“传输数据”表;最终用户将excel链接到access文件中,然后复制->粘贴附加到该文件中,在该月的最后一天,数据被用于其他计算中,问题实际上就在触发器中;如果移除触发器,则不会显示与设置完全相同的错误消息