La création d'une requête paramétrée en SQL vous permet de spécifier dynamiquement des critères lors de l'exécution d'une requête. Voici les étapes pour créer une requête paramétrée :
#### Ouvrez l'éditeur SQL :
Ouvrez votre éditeur SQL ou votre outil de gestion de base de données.
#### Créez une requête de sélection de base :
Commencez par écrire une requête SELECT de base qui récupère les colonnes souhaitées d'une table. Par exemple:
```
SÉLECTIONNER *
DES clients
```
#### Ajouter un paramètre :
Dans la clause WHERE, ajoutez un espace réservé pour le paramètre à l'aide d'un point d'interrogation (?) pour représenter les critères dynamiques. Par exemple:
```
SÉLECTIONNER *
DES clients
OÙ ville =?
```
Le point d'interrogation (?) dans la requête agit comme un espace réservé pour la valeur du paramètre qui sera fournie lors de l'exécution de la requête.
#### Préparez la déclaration :
Utilisez la méthode appropriée fournie par votre système de base de données pour préparer l'exécution de l'instruction SQL. Cette étape varie en fonction de la base de données et du langage de programmation que vous utilisez.
#### Lier la valeur du paramètre :
Liez la valeur du paramètre à l’instruction préparée. Le processus de liaison associe une valeur spécifique à l'espace réservé du paramètre (?).
#### Exécutez la requête :
Exécutez l'instruction préparée, en fournissant la valeur réelle du paramètre.
#### Exemple:
Prenons un exemple simple dans MySQL. Supposons que nous souhaitions rechercher des clients d'une ville spécifique à l'aide d'une requête paramétrée. Voici comment créer et exécuter la requête :
```
// Ouvrir la connexion à la base de données MySQL
// Exécute la requête
```
```sql
// Crée une requête paramètre
SÉLECTIONNER *
DES clients
OÙ ville =?;
```
```
// Prépare la déclaration
Instruction PreparedStatement =connexion.prepareStatement(sql);
// Lier la valeur du paramètre
déclaration.setString(1, "New York");
// Exécute la requête
ResultSet resultSet =instruction.executeQuery();
// Traite le jeu de résultats
while (resultSet.next()) {
// Récupère les valeurs des colonnes
Nom de la chaîne =resultSet.getString("nom");
Chaîne ville =resultSet.getString("ville");
// Imprimer le résultat
System.out.println("Client :" + nom + ", Ville :" + ville);
}
```
Dans cet exemple, nous lions la valeur réelle « New York » à l'espace réservé du paramètre (?) à l'aide de setString(1, « New York »). Lorsque la requête est exécutée, elle récupérera les clients de la base de données où la colonne ville correspond à la valeur du paramètre spécifié.
Les requêtes avec paramètres sont utiles pour créer des requêtes SQL dynamiques et flexibles qui peuvent être facilement modifiées en modifiant les valeurs des paramètres sans modifier l'instruction SQL sous-jacente elle-même.
|