徵狀
在 Microsoft Access 中,您可能會在其他查詢中使用傳遞查詢作為來源資料表,以導致效能變慢。
原因
Microsoft Access 不會儲存傳遞查詢的定義。 因此,傳遞查詢可能會在不同的時間執行,以取得與其定義相關的資訊。 當傳遞查詢花費相當長的時間執行時,Access 會在執行直通查詢時顯示為 [暫停]。
解決方案
根據您在 Access 中發現問題的位置,有許多方法可避免此問題。一般變更:
-
改善傳遞查詢效能,以減少執行查詢所需的時間。
-
請不要使用傳遞查詢,而是在 SQL Server 中建立一個視圖,並將該視圖改為連結資料表來存取。
特定案例:設計查詢:
-
在 Access SQL 視圖中進行設計變更,而不是設計檢視(在查詢的 [設計檢視] 中,您可以先在 [設計檢視] 中開啟查詢,將視圖變更為 [SQL] 視圖。 然後移至功能區上 [設計] 索引標籤上的 [結果] 區段。
-
這個問題會影響已儲存的查詢。 因此,您可以在 Access SQL 視圖中開啟現有的查詢、複製 SQL 語法、建立新的查詢、在 SQL 視圖中貼上 SQL 語法,然後將查詢變更為 [設計檢視]。 您必須先儲存查詢,才能設計不會發生問題的查詢。
開啟 [表單] 或 [執行查詢]:
-
將 [記錄集類型] 屬性變更為 [快照]。 (在 [設計檢視] 中,在 [顯示/隱藏] 群組底下的功能區的 [設計] 索引標籤中公開屬性工作表)
查看報告:
-
變更報表,以使用直接傳遞查詢作為其記錄源