将字段从一个表更新到另一个表

时间:2014-05-05 22:32:59

标签: ms-access-2007

我试图将表中的两个字段更新为另一个表中同名/数据类型的两个字段。不会工作!我的SQL

UPDATE tblEmployeesTemplateTest INNER JOIN tblPersonalWsInDS ON 
tblEmployeesTemplateTest.EMPGivenNameLegal = tblPersonalWsInDS.EMPGivenNameLegal 
SET tblPersonalWsInDS.EMPGivenNameLegal = 
[tblEmployeesTemplateTest].[EMPGivenNameLegal], 
tblPersonalWsInDS.EMPSurnameLegal = 
[tblEmployeesTemplateTest].[EMPSurnameLegal];

这不会更新任何字段。

2 个答案:

答案 0 :(得分:0)

如果我没有错,您的查询应该如下所示

UPDATE TPW  
SET TPW.EMPGivenNameLegal = TET.[EMPGivenNameLegal],
TPW.EMPSurnameLegal = TET.[EMPSurnameLegal]
FROM tblPersonalWsInDS AS TPW
INNER JOIN tblEmployeesTemplateTest AS TET
ON TET.EMPGivenNameLegal = TPW.EMPGivenNameLegal;

答案 1 :(得分:0)

您始终需要更新单个表格。所以你需要使用:

UPDATE <table> 
   SET <field> = <value>
       ... 
  FROM <other table/join> 
 WHERE <conditions>;

这里没有明确的JOIN,只是FROM中的第二个表和WHERE中的连接条件。

AFAICT JOIN应该在语法上被禁止。我很惊讶查询运行并没有做任何事情而不是犯错误。

相关问题