Access按钮直接将代码从窗体插入SQL中的链接表

Access按钮直接将代码从窗体插入SQL中的链接表,sql,vba,ms-access,Sql,Vba,Ms Access,很抱歉,如果以前有人问过这个问题,我已经看过了,虽然我可以找到类似的结果,但它们并没有帮助我。 我有一个小项目要做,检查一下姓名和地址。我有两张表格,上面的名字和地址都是错误和重复的。我已经将这些与SQL进行了匹配,但我的老板希望进行几百次的文书检查,以显示SQL匹配的准确性。 为此,我创建了一个表单,下面有链接到SQLServer数据库的子表单。基本前提是主窗体显示匹配的结果,子窗体在其他表中显示相应的匹配。 我做了一个按钮,当你对比赛满意时点击。其目的是在匹配结果表中的结果旁边放置一个“是”

很抱歉,如果以前有人问过这个问题,我已经看过了,虽然我可以找到类似的结果,但它们并没有帮助我。 我有一个小项目要做,检查一下姓名和地址。我有两张表格,上面的名字和地址都是错误和重复的。我已经将这些与SQL进行了匹配,但我的老板希望进行几百次的文书检查,以显示SQL匹配的准确性。 为此,我创建了一个表单,下面有链接到SQLServer数据库的子表单。基本前提是主窗体显示匹配的结果,子窗体在其他表中显示相应的匹配。 我做了一个按钮,当你对比赛满意时点击。其目的是在匹配结果表中的结果旁边放置一个“是”。使用主窗体中的工作id作为匹配键

按钮的代码是

STRSQL = "UPDATE dbo_reference_table SET Match = 'YES' WHERE work_ID = '"& me.work_id & "'"
DoCmd.Runsql (STRSQL)
但是,当我运行代码时,我不断得到:

运行时错误“3362”单行更新/删除影响了多个 链接表中的行。唯一索引包含重复的值


如有任何帮助,将不胜感激。

匹配和工作ID是否都是文本类型字段?这是为了更新多个记录吗?Hi Work_id是一个INT,Match是Varchr。不,它不是为了更新多个字段,因为每个Work_id都是唯一的。不要对数字类型字段使用撇号分隔符。但若表单显示了预期的记录,并且该记录具有焦点,那个么只需设置控件的值:
Me.Match=“Yes”
。或者简单地直接对预期记录进行手动编辑。按钮的确切位置在哪里?