【发布时间】:2018-01-02 23:49:08
【问题描述】:
存在以下表格:
Passerine_Survey_Observation Species_Codes
我正在尝试将 Passerine_Survey_Observation 中的通用名称设置为 Species_Codes 的通用名称:
UPDATE Passerine_Survey_Observation
INNER JOIN Species_Codes ON Passerine_Survey_Observation.SPEC_FK = Species_Codes.SPEC
SET Passerine_Survey_Observation.Species_Common_Name = Species_Codes.COMMONNAME;
它说会发生更新;但是,Passerine_Survey_Observation 没有任何变化。
如果我这样做,更新确实会按预期发生:
SET Passerine_Survey_Observation.Species_Common_Name = 'test'
【问题讨论】:
-
一旦你点击警告OK,它是否会出现一条消息说这么多记录被更新了?
-
不,它没有,@Knox
-
代码对我来说很合适。如果您将 Species_Codes.COMMONNAME 替换为类似于您所做的“测试”,会发生什么?
-
会不会出现类型不匹配,COMMONNAME 无法进入目标字段?还是尺寸不匹配?通常这会导致警告说由于...而没有更新很多行。
-
您的屏幕截图中的记录数看起来是否正确(即观察表中的所有记录)?这将证明连接是否按预期发生。如果您在数据表视图中显示查询,它会显示什么(您希望它为每个观察记录列出匹配的 COMMONNAME)?
标签: ms-access sql-update inner-join