如何根据查询删除记录?

时间:2017-03-22 19:54:33

标签: sql vba

我想要完成的是让VBA在备份时运行删除查询。问题出在我的查询中(我希望) 我有一个选择查询隔离我想删除的记录,但是当我尝试将其删除时,我收到此错误:

  

指定包含您要删除的记录的表。

或者这个错误:

  

保留错误(-3211);此错误没有消息。

我的选择语句为:

SELECT Manhours.*, Tickets.Status, Year([Open Date])
FROM Manhours INNER JOIN Tickts ON Manhours.TicketID = Tickets.ID
WHERE (Tickets.Status) = "Closed" AND ((Year([Open Date]))< Year(DATE())-1 
      OR ((Year([Open Date]))= Year(DATE()-1))

select语句将调用我需要的记录,但当我尝试将其设为删除查询时,它会出错。

1 个答案:

答案 0 :(得分:0)

好消息!

我找到了我要找的东西:

DELETE FROM Manhours WHEN EXISTS (SELECT ID FROM Tickets WHERE (Tickets.Status) = "Closed" AND ((Year([Open Date]))< Year(DATE())-1 OR ((Year([Open Date]))= Year(DATE()-1))