簡體   English   中英

訪問動態傳遞查詢

[英]Access Dynamic Pass-through Query

我一直在尋找,但是沒有找到一個好的答案。 我發現我可以在VBA過程中生成代碼並從那里運行它,但是,我正在從事其他人的設計,並且不想對其進行過多更改。

在該傳遞查詢的一部分中,我們具有以下內容:

WHERE (((ID='380')

我希望380是將要查看UserForm組合框的代碼,為我的數據庫寫一個查詢,返回一個值WHERE column = combobox.value

我希望這是有道理的,讓我知道是否有人知道如何使用此功能。 謝謝。

您可以設置組合框以將所選值放在單元格中,然后通過參數將查詢鏈接到該單元格的值。

干杯-

在四處查看並進行了一些研究之后,似乎只有服務器上的存儲過程(我做不到)或創建字符串並將該字符串傳遞給傳遞查詢是我的選擇。 我將繼續使用string選項,因為這似乎是受我的限制的最佳選擇。 如果以后有人提出任何想法會有所幫助,請告訴我。 謝謝。

一種方法是將模板查詢存儲在傳遞查詢中,例如:

select * from table where ID = [ID]

然后使用VBA讀取查詢,替換ID,將其寫到另一個准備好的查詢中,然后執行它。 像這樣:

Sub zzz()

    Dim SQL As String

    With CurrentDb
        SQL = .QueryDefs("PassThruQueryTemplate").SQL
        .QueryDefs("PassThruQuery").SQL = Replace(SQL, "[ID]", "380")
        .Execute "PassThruQuery"
    End With

End Sub

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM