1

我正在尝试使用 UPDATE 查询从另一个表中的字段修改表中的字段。

我使用的查询语句是:

UPDATE Todays_Deliveries SET Remaining = DLookup("Remaining","Current_Delivery","[MP-Ref] = Form![MP-Ref] And [Cat No] ='" & [Cat No] & "'")
WHERE "[MP-Ref] = Form![MP-Ref] And [Cat No] ='" & [Cat No] & "'";

MP-Ref 是交货参考。

Cat No 是项目参考。

Todays_Deliveries 是一个表格,其中包含与在给定日期交付的项目相关的总记录。用户使用表单选择交付,然后使用 APPEND 查询根据交付参考填充 Current_Delivery 表。用户完成后,使用 DELETE 查询清除 Current_Delivery 表。

两个表都有一个Remaining值,其中包含仍需要预订的特定记录的总数。当用户在 Current_Delivery 表单上修改 Current_Delivery的Remaining字段时,查询会更新 Todays_Deliveries 表。一切正常,但是运行查询时不在 Current_Delivery 表中的任何记录都将更新为 NULL。

删除 WHERE 子句似乎对结果没有影响,这让我相信我没有正确使用 WHERE 子句。

任何帮助/建议将不胜感激。

4

1 回答 1

0

你的整个 Where 子句用双引号括起来。即使对于 Access 女士来说,这也有点奇怪。

尝试这个 :

UPDATE Todays_Deliveries 
SET Remaining = DLookup("Remaining","Current_Delivery","[MP-Ref] = Form![MP-Ref] And [Cat No] ='" & [Cat No] & "'")
WHERE [MP-Ref] = Form![MP-Ref] And [Cat No] =  "'" & [Cat No] & "'";
于 2012-10-24T17:29:43.260 回答