Requêtes avec paramètres (Visual Database Tools)
S'applique à : SQL Server
Dans certains cas, il est utile de créer une requête si vous devez souvent y faire appel, mais chaque fois avec une valeur différente. Par exemple, il se peut que vous exécutiez fréquemment une requête pour rechercher tous les title_ids
écrits par un auteur. Chaque demande pourrait utiliser la même requête, mais l'ID ou le nom de l'auteur serait différent à chaque fois.
Pour que la requête prenne une valeur différente selon le cas, incluez des paramètres dans sa création. Un paramètre est un espace réservé, qui sera rempli par une valeur fournie au moment de l'exécution de la requête. Une instruction SQL avec un paramètre peut ressembler à ce qui suit, où « ? » représente le paramètre de l’ID de l’auteur :
SELECT title_id
FROM titleauthor
WHERE (au_id = ?)
Où utiliser des paramètres
Vous pouvez utiliser des paramètres comme des espaces réservés pour les valeurs littérales (textuelles ou numériques). Les paramètres sont généralement utilisés comme espaces réservés dans des conditions de recherche pour des lignes individuelles ou pour des groupes (c’est-à-dire, dans les clauses WHERE ou HAVING d’une instruction SQL).
Dans les expressions, vous pouvez utiliser les paramètres comme des espaces réservés. Par exemple, il est possible de calculer des prix avec remise en fournissant une remise différente à chaque exécution de la requête. Dans ce cas, vous pourriez spécifier l'expression suivante :
(price * ?)
Spécification de paramètres nommés et sans nom
Vous pouvez spécifier deux types de paramètres : nommés et sans nom. Un paramètre sans nom est un point d'interrogation (?) que vous pouvez placer dans la requête à l'endroit où vous serez invité à indiquer une valeur littérale. Par exemple, si vous utilisez un paramètre sans nom pour rechercher l’ID d’un auteur dans la table titleauthor
, le volet SQL peut proposer l’instruction suivante :
SELECT title_id
FROM titleauthor
WHERE (au_id = ?)
Quand vous exécutez la requête dans le Concepteur de requêtes et de vues, la boîte de dialogue Paramètres de la requête s’affiche avec « ? » comme nom du paramètre.
Une autre méthode consiste à assigner un nom à un paramètre. Cela s'avère particulièrement utile si la requête doit comporter plusieurs paramètres. Par exemple, voici l'instruction proposée dans le volet SQL si vous utilisez des paramètres nommés pour rechercher le prénom et le nom d'un auteur dans la table authors
:
SELECT au_id
FROM authors
WHERE au_fname = %first name% AND
au_lname = %last name%
Conseil
Vous devez définir les caractères de préfixe et de suffixe avant de créer une requête employant un paramètre nommé.
Quand vous exécutez la requête dans le Concepteur de requêtes et de vues, la boîte de dialogue Paramètres de la requête s’affiche avec la liste des paramètres nommés.
Voir aussi
Requête avec des paramètres (Visual Database Tools)
Types de requêtes pris en charge (Visual Database Tools)
Rubriques de procédures relatives à la conception de requêtes et de vues (Visual Database Tools)