如何在MS Access中编写一个宏,该宏将自动运行多个SQL查询并同时保存它们?如果我选择OpenQuery操作,那么它需要一个已经保存的查询,但是我想使用宏在多个表上运行查询,有什么方法可以做到!
答案 0 :(得分:1)
使用一个简单的函数来创建查询。然后,您只需要运行它。如果您不提供名称,查询将不会被存储(临时)。
创建查询:
Private Function CreateQueryDefinition(ByVal qryName As String, ByVal sqlCommand As String) As DAO.QueryDef
Set CreateQueryDefinition = CurrentDb().CreateQueryDef(qryName, sqlCommand)
End Function
要调用它:
Private Sub Form_Load()
Dim q As DAO.QueryDef
Set q = CreateQueryDefinition("QueryName", "UPDATE Table SET Table.Field = 'Whatever';")
q.Execute dbFailOnError
End Sub
请注意,如果您尝试创建一个已经存在的查询,则会引发错误。