

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

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

Crea un'istruzione SQL con il nome `statement_name` da eseguire in un secondo momento. L'istruzione può includere parametri rappresentati da punti interrogativi. Per fornire valori per i parametri ed eseguire l'istruzione preparata, utilizza [EXECUTE](sql-execute.md).

## Riepilogo
<a name="sql-prepare-synopsis"></a>

```
PREPARE statement_name FROM statement
```

Nella tabella seguente vengono descritti questi parametri.


****  

| Parametro | Description | 
| --- | --- | 
| statement\$1name | Il nome dell'istruzione da preparare. Il nome deve essere univoco all'interno del gruppo di lavoro. | 
| statement | Una query SELECT, CTAS o INSERT INTO. | 

**Nota**  
Il numero massimo di istruzioni preparate in un gruppo di lavoro è 1.000.

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

L'esempio seguente prepara una query di selezione senza parametri.

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

L'esempio seguente prepara una query di selezione che include i parametri. I valori per `productid` e `quantity` verranno forniti dalla clausola `USING` di un’istruzione `EXECUTE`:

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

L'esempio seguente prepara una query insert.

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

## Risorse aggiuntive
<a name="sql-prepare-additional-resources"></a>

[Utilizzare istruzioni preparate](querying-with-prepared-statements-querying.md)

[EXECUTE](sql-execute.md)

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

[INSERT INTO](insert-into.md)