參數查詢 (Visual Database Tools)

有時候您想要建立可以使用多次的查詢,但每次都使用不同的值。 例如,您可能經常執行查詢尋找由某位作者所寫的所有 title_ids。 除了每次使用的作者 ID 或名稱不同外,每次要求時您可以執行相同的查詢。

若要建立不同時候具有不同值的查詢,您必須在查詢中使用參數。 參數為一預留位置,執行查詢時提供參數值即可。 使用參數的 SQL 陳述式將如下所示,其中「?」是指作者的 ID 之參數:

SELECT title_id
FROM titleauthor
WHERE (au_id = ?)

使用參數的位置

您可以使用參數做為常值的預留位置,不管是文字或數值。 通常參數可做為個別資料列或群組的搜尋條件中之預留位置 (即在 SQL 陳述式的 WHERE 或 HAVING 子句中)。

您可以使用參數當做運算式中的預留位置。 例如,您可以利用每次執行查詢時都提供不同折扣值來計算折扣價格。 若要完成這項作業,您可以指定下列運算式:

(price * ?)

指定未具名和具名參數

您可以指定兩種類型的參數:未具名和具名。 未具名參數為問號 (?),您可以放在查詢中需要提示或取代常值的位置。 例如,如果使用未具名參數搜尋 titleauthor 資料表中的作者 ID,SQL 窗格中產生的結果陳述式將如下所示:

SELECT title_id
FROM titleauthor
WHERE (au_id = ?)

當您在查詢和檢視設計師執行查詢時,查詢參數對話方塊會出現「?」做為參數的名稱。

或者您也可以指定參數名稱。 如果查詢中有多個參數,具名參數則特別有用。 例如,如果您使用具名參數在 authors 資料表中搜尋作者的名字和姓氏,SQL 窗格中產生的結果陳述式將如下所示:

SELECT au_id
FROM authors
WHERE au_fname = %first name% AND
      au_lname = %last name%
提示提示

在建立具名參數查詢之前,必須先定義前置和後置字元。

當您在 [查詢和檢視設計師] 執行查詢時,查詢參數對話方塊會出現具名參數清單。

請參閱

概念

支援的查詢類型 (Visual Database Tools)

其他資源

使用參數查詢 (Visual Database Tools)

設計查詢和檢視使用說明主題 (Visual Database Tools)