パラメーター クエリ (Visual Database Tools)
適用対象:SQL Server
場合によっては、何度も使用できるクエリを作成する必要がありますが、毎回異なる値を使用します。 たとえば、クエリを頻繁に実行して、1 人の作成者によって記述されたすべての title_ids
を見つけることができます。 作成者の ID または名前が毎回異なる点を除き、要求ごとに同じクエリを実行できます。
異なる時間に異なる値を持つクエリを作成するには、クエリでパラメーターを使用します。 パラメーターは、クエリの実行時に指定される値のプレースホルダーです。 パラメーターを含む SQL ステートメントは次のようになります。"?" は作成者の ID のパラメーターを表します。
SELECT title_id
FROM titleauthor
WHERE (au_id = ?)
パラメーターを使用できる場所
リテラル値のプレースホルダーとして、テキストまたは数値のパラメーターを使用できます。 最も一般的に、パラメーターは、個々の行またはグループの検索条件 (つまり、SQL ステートメントの WHERE 句または HAVING 句) でプレースホルダーとして使用されます。
式のプレースホルダーとしてパラメーターを使用できます。 たとえば、クエリを実行するたびに異なる割引値を指定して、割引価格を計算できます。 これを行うには、次の式を指定できます。
(price * ?)
名前のないパラメーターと名前付きパラメーターの指定
名前のないパラメーターと名前付きパラメーターの 2 種類を指定できます。 名前のないパラメーターは、クエリ内の任意の場所に配置する疑問符 (?) で、リテラル値を要求または代入するためのものです。 たとえば、名前のないパラメーターを使用して、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)