我知道这个问题一定要被问过一百万次,但我还没有找到一个非常有用的问题" MS Access 2007 SQL中的解决方案。
我正在使用2个表 TBLDestination 和 TBLSource 。当找到匹配的ID时,我必须从源表记录更新目标表记录。对于不匹配的ID(即新ID),我想插入新记录 (请参阅下表)。
-----TBLSource-------
ID (match if ID exists in Destination table)
EmpName
EmpAdd
---TBLDestination-----
ID
EmpName (to be updated/inserted)
EmpAdd (to be updated/inserted)
Salary
答案 0 :(得分:1)
MS Access没有与UPSERT等效的地方,您可以在一次查询中同时执行这两项操作。
但是,通过执行UPDATE查询可以获得相同的效果,您可以在其中加入要更新的表。然后你做一个INSERT查询,你在那里OUTER JOIN到表并返回那些不存在的表。
答案 1 :(得分:1)
使用带有UPDATE
的{{1}}来访问DOES。 See here