要在 Access 資料庫中查詢,執行時會要求條件,建立參數查詢。 如此一來可以反覆使用相同查詢,而不必一直在 設計檢視 中開啟查詢來編輯準則。
了解術語
在進入以下步驟之前,先了解以下術語會很有幫助:
-
參數 參數是你在執行查詢時立即提供的資訊。 參數可以單獨使用,或作為較大表達式的一部分,以形成查詢中的準則。 你可以為以下任何類型的查詢加入參數:
-
選取
-
交叉資料表
-
附加
-
產生資料表
-
更新
-
-
Criteria 條件是你在查詢中加入的「篩選器」,用來指定執行查詢時回傳哪些項目。
如需前述查詢類型的詳細資料,請參閱查詢簡介。
建立參數查詢
建立參數的方法,和在查詢加入一般準則的方法類似:
-
建立一個選取查詢,然後在設計檢視中開啟查詢。
-
在您要套用參數的欄位的 [準則] 資料列,輸入要顯示於參數方塊的文字,並以方括號括住。 例如,[Enter the start date:]
-
為每一個要加入參數的欄位重複第 2 步驟。
當您執行查詢時,即會顯示該提示句,不含方括號。
輸入你想要的數值,然後點擊 確定。
您可以在一個準則中使用多個參數。 例如,當您執行查詢時,Between [Enter the start date:] And [Enter the end date:] 會產生兩個提示。
欲了解更多查詢標準範例,請參見 查詢標準範例。
指定參數的資料型別
參數可以設為僅接受特定資料類型。 為數值、貨幣或日期/時間資料指定資料類型特別重要,因為如此使用者輸入錯誤資料類型時可以看到有幫助的錯誤訊息;例如詢問貨幣值卻輸入文字時。
附註: 如果將參數設定為接受文字資料,則任何輸入項目都會解譯成文字,且不會顯示任何錯誤訊息。
要指定查詢參數的資料類型:
-
在設計檢視中開啟查詢時,在 查詢設計 標籤的 「顯示/隱藏 」群組中,點擊 參數。
-
在 [查詢參數] 方塊的 [參數] 資料行中,為每一個要指定資料類型的參數輸入提示。 請務必確認每個參數都符合您在查詢設計格線的 [準則] 資料列中使用的提示。
-
在 [資料型別] 資料行中,選取每個參數的資料型別。
新增參數至聯集查詢
由於你無法在查詢設計網格中查看聯合查詢,你需要稍微不同的做法:
-
在 SQL 檢視中開啟聯集查詢。
-
新增一個 WHERE 子句,內含您要加入參數的欄位。
若 WHERE 子句已存在,請查看您要加入參數的欄位是否已列於該子句。 如果不是,就加進去。
-
將參數提示句輸入 WHERE 子句,例如 WHERE [StartDate] = [Enter the start date:]
請注意,您必須在查詢的每一段加入相同篩選條件。 在上圖中的查詢有兩段 (以 UNION 關鍵字區隔),所以必須加入兩次參數。 不過,當您執行查詢時,提示句僅會顯示一次 (假設每一段的提示句完全相同)。
欲了解更多關於聯合查詢的資訊,請參閱 「使用聯合查詢將多個查詢合併成單一結果」。
在參數中使用萬用字元以提供更高彈性
與普通的準則相同,參數也可以結合 Like 關鍵字及萬用字元,使其符合更多項目。 例如,您可能會要查詢提示輸入生產國家/地區,但只要任何值包含參數字串即算相符。 若要這麼做:
-
建立一個選取查詢,然後在設計檢視中開啟查詢。
-
在您要新增參數的欄位的 [準則] 資料列,輸入 Like "*"&[ (您要做為提示的文字),然後輸入 ]&"*"。
當你執行參數查詢時,提示會出現在對話框中,沒有方括號,也沒有 Like 關鍵字或萬用字元:
輸入參數後,查詢會傳回內含參數字串的值。 例如,參數字串 us 會傳回的項目包含參數欄位值為 Australia 的項目,以及值為 USA 的項目。
欲了解更多關於萬用卡的資訊,請參見 「萬用字元範例」。
回傳與參數不符的項目
你可能希望查詢回傳與參數不符的項目。 例如,假設您要在提示輸入年份後,傳回年份大於輸入年份的項目。 為此,請在第一個方括號左側輸入一個比較運算符,例如, >[輸入年份:]。
影片:在查詢中使用參數
在查詢中使用參數就像建立使用準則的查詢般容易。 您可以設計查詢來使它提示您輸入一或多項資訊,例如零件編號或是兩個日期。 參數查詢會針對每個參數顯示一個對話方塊,提示您輸入該參數的值。
請觀看這段影片,深入了解在查詢中建立參數。