參數查詢 (Visual Database Tools)
適用於:SQL Server
有時候您想要建立可以使用多次的查詢,但每次都使用不同的值。 例如,您可能經常執行查詢尋找由某位作者所寫的所有 title_ids
。 除了每次使用的作者 ID 或名稱不同外,每次要求時您可以執行相同的查詢。
若要建立不同時候具有不同值的查詢,您必須在查詢中使用參數。 參數為一預留位置,執行查詢時提供參數值即可。 具有參數的 SQL 語句可能如下所示,其中 “?” 代表作者標識符的參數:
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)