如何基于另一个表中的字段更新表中的字段

时间:2014-05-30 09:20:35

标签: sql sql-update ms-access-2007

所以我有两张表,InTheMiddleTable2 第一列包含Name列,第二列包含IDName列 (他们也有其他专栏,但与这个问题无关)

我想用第二个表中的ID更新/更改第一个表中的名称,但当然只有当名称匹配且只有一个名称时(因此没有任何分号) &#34 ;;"。)

这是我尝试使用的查询,但Access告诉我"操作必须使用可更新的查询"

UPDATE InTheMiddle
SET [Name] =
(SELECT [Table2].ID
   FROM [Table2]
   WHERE InTheMiddle.[Name] = [Table2].[Name]
   AND InTheMiddle.[Name] NOT LIKE "*;*"
);

1 个答案:

答案 0 :(得分:0)

可能与Operation must use an updatable query. (Error 3073) Microsoft Access重复,其中接受的答案表明避免该错误消息的唯一方法是使用临时表。

除了已接受的答案,this answer建议使用与您的代码相似的解决方法