共用方式為


參數查詢

更新:2007 年 11 月

有時候您想要建立可以多次使用但每次都使用不同值的查詢。例如,您可能經常執行查詢尋找由某位作者所寫的所有 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)

其他資源

使用參數查詢

設計查詢和檢視表