如何在ms访问中编写一个将运行sql的宏

问题描述 投票:0回答:1

如何在MS Access中编写一个宏,它将自动运行多个SQL查询并同时保存它们?如果我选择OpenQuery操作,那么它需要一个已经保存但我想使用宏在多个表上运行查询的查询,有没有办法做到这一点!

vba ms-access access-vba
1个回答
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

请注意,如果您尝试创建已存在的查询,则会引发错误。

© www.soinside.com 2019 - 2024. All rights reserved.