首页 > 解决方案 > 使用表单字段作为标准的 DELETE 查询要求提供参数而不是从表单中提取

问题描述

我有一个F_Duplicates带有查询记录源 ( ) 的表单 ( Q_Duplicates)。根据交易的日期和金额从两个表 (和) 中Q_Duplicates选择银行账户交易数据,以便列出可能的重复数据供用户比较。然后,用户按下两个按钮之一来运行 DELETE 查询以删除重复数据,或者按下按钮运行 UPDATE 查询以将其标记为不重复(或至少这是目标)。T_List_Transactionsbk_downloadF_Duplicatesbk_download

DELETE * FROM [bk_download] WHERE [bk_download].[Import_ID]=[Forms]![F_Duplicates]![FImport_ID]

FImport_IDbk_download通过Q_Duplicates查询从中提取。每当我运行 DELETE 查询时,我都会看到Forms!F_Duplicates!FImport_ID.

同样适用

UPDATE [bk_download] SET [Not_Dup] = True WHERE [bk_download].[Import_ID] = [Forms]![F_Duplicates]![FImport_ID]

此外,我必须使用宏生成器而不是 VBA,因为使用 VBA 会返回 ActiveX 或 OLE 错误或其他东西。

我已经尝试了大约一百种不同的方法,但无济于事。有一次我让它几乎可以工作,但它会从 bk_download 中删除所有记录,似乎忽略了 WHERE 子句。但是我不知道我是怎么做到的。

标签: sqlms-access

解决方案


推荐阅读