我正在尝试使用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是商品参考。
Wheress_Deliveries是一个表格,其中包含与某一天的交货项目相关的总记录。用户使用表单选择交付,然后使用APPEND查询根据交货参考填充Current_Delivery表。用户完成后,使用DELETE查询清除Current_Delivery表。
两个表都有一个剩余值,其中包含仍需要预订的特定记录的总数。当用户修改剩余 Current_Delivery表单上的Current_Delivery字段。一切正常,但运行查询时不在Current_Delivery表中的任何记录都更新为NULL。
删除WHERE子句似乎对结果没有影响,这使我相信我没有正确地推理WHERE子句。
非常感谢任何帮助/建议。
答案 0 :(得分:0)
您的整个Where子句用双引号括起来。 对于Ms 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] & "'";