

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# PREPARE
<a name="sql-prepare"></a>

Crée une instruction SQL avec le nom `statement_name` à exécuter ultérieurement. L'instruction peut inclure des paramètres représentés par des points d'interrogation. Pour fournir des valeurs pour les paramètres et exécuter l'instruction préparée, utilisez [EXECUTE](sql-execute.md).

## Résumé
<a name="sql-prepare-synopsis"></a>

```
PREPARE statement_name FROM statement
```

La table suivante décrit ces paramètres.


****  

| Paramètre | Description | 
| --- | --- | 
| statement\_name | Nom de l'instruction à préparer. Le nom doit être unique au sein du groupe de travail. | 
| statement | Une requête SELECT, CTAS ou INSERT INTO. | 

**Note**  
Le nombre maximal d'instructions préparées dans un groupe de travail est de 1 000.

## Exemples
<a name="sql-prepare-examples"></a>

L'exemple suivant prépare une requête de sélection sans paramètre.

```
PREPARE my_select1 FROM 
SELECT * FROM nation
```

L'exemple suivant prépare une requête de sélection qui inclut des paramètres. Les valeurs pour `productid` et `quantity` seront fournies par la clause `USING` d'une instruction `EXECUTE` :

```
PREPARE my_select2 FROM 
SELECT order FROM orders WHERE productid = ? and quantity < ?
```

L'exemple suivant prépare une requête d'insertion.

```
PREPARE my_insert FROM 
INSERT INTO cities_usa (city, state) 
SELECT city, state 
FROM cities_world 
WHERE country = ?
```

## Ressources supplémentaires
<a name="sql-prepare-additional-resources"></a>

[Utilisation d’instructions préparées](querying-with-prepared-statements-querying.md)

[EXECUTE](sql-execute.md)

[DEALLOCATE PREPARE](sql-deallocate-prepare.md)

[INSERT INTO](insert-into.md)