-1

3 つのクエリがあるとします。

  • クエリ1
  • クエリ2
  • クエリ3

そして、単一のクエリ QueryRunAll を実行して、それらすべてを実行したいと考えています。QueryRunAll 内で Query1、Query2、および Query3 を実行するにはどうすればよいですか?

どうもありがとう!

4

2 に答える 2

1

Query1Query2、およびQuery3はすべてクエリであるためINSERT、単一のクエリ からそれらすべてを実行できる唯一の方法QueryRunAllは、ユーザー定義関数を使用することです。

QueryRunAllAccess セッション内から実行する場合は、これを SQL として使用できます。

SELECT Runall() AS successful;

ただし、Access セッションの外部から実行する場合QueryRunAllは、UDF を使用できないため、1 つのクエリで 3 つのアクション クエリを実行することはできません。

Public Function Runall() As String
    Dim blnReturn As Boolean
    Dim db As DAO.Database
    Dim strMsg As String

On Error GoTo ErrorHandler

    Set db = CurrentDb
    db.Execute "Query1", dbFailOnError
    db.Execute "Query2", dbFailOnError
    db.Execute "Query3", dbFailOnError
    blnReturn = True
    Set db = Nothing

ExitHere:
    Set db = Nothing
    Runall = blnReturn
    Exit Function

ErrorHandler:
    ' do more here if desired
    GoTo ExitHere
End Function
于 2012-10-12T16:52:29.740 に答える
0

MS Access (少なくとも 2003 ) では、複数のクエリを一緒に実行できるようにするクエリの次の構文が許可されています。

SELECT Query1.col1, Query2.col2, Query3.col1
FROM Query1, Query2, Query3

またはINSERT

INSERT INTO yourtable (col1, col2,...)
SELECT Query1.col1, Query2.col2
FROM Query1, Query2, Query3
于 2012-10-08T19:23:51.047 に答える