

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à.

# Utilizzo del comando \$1copy per importare i dati in una tabella su un'istanza database PostgreSQL
<a name="PostgreSQL.Procedural.Importing.Copy"></a>

Il comando `\copy` di PostgreSQL è un meta-comando disponibile dallo strumento client interattivo `psql`. Puoi utilizzare `\copy` per importare i dati in una tabella sull'istanza database RDS for PostgreSQL. Per utilizzare il comando `\copy`, è necessario innanzitutto creare la struttura della tabella sull'istanza database di destinazione in modo che `\copy` abbia una destinazione per i dati copiati.

Puoi utilizzare `\copy` per caricare i dati da un file di valori separati da virgole (CSV), ad esempio uno che è stato esportato e salvato nella workstation client.

Per importare i dati CSV nell'istanza database RDS for PostgreSQL di destinazione, connettiti prima all'istanza database di destinazione utilizzando `psql`. 

```
psql --host=db-instance.111122223333.aws-region.rds.amazonaws.com --port=5432 --username=postgres --password --dbname=target-db
```

Quindi esegui il comando `\copy` con i seguenti parametri per identificare la destinazione per i dati e il relativo formato.
+ `target_table` - Il nome della tabella che dovrebbe ricevere i dati copiati dal file CSV.
+ `column_list` - Specifiche delle colonne per la tabella. 
+ `'filename'` - Il percorso completo del file CSV sulla workstation locale. 

```
 \copy target_table from '/path/to/local/filename.csv' WITH DELIMITER ',' CSV;
```

Se il file CSV contiene informazioni sull'intestazione di colonna, puoi utilizzare questa versione del comando e dei parametri.

```
\copy target_table (column-1, column-2, column-3, ...)
    from '/path/to/local/filename.csv' WITH DELIMITER ',' CSV HEADER;
```

 Se il comando `\copy` ha esito negativo, PostgreSQL emette messaggi di errore.

Crea una nuova istanza database utilizzando il comando `psql` dell’ambiente di anteprima del database con il meta-comando `\copy` come mostrato negli esempi seguenti. Questo esempio utilizza *source-table* come nome della tabella di origine, *source-table.csv* come file .csv e *target-db* come database di destinazione:

Per Linux, macOS o Unix:

```
$psql target-db \
    -U <admin user> \
    -p <port> \
    -h <DB instance name> \
    -c "\copy source-table from 'source-table.csv' with DELIMITER ','"
```

Per Windows:

```
$psql target-db ^
    -U <admin user> ^
    -p <port> ^
    -h <DB instance name> ^
    -c "\copy source-table from 'source-table.csv' with DELIMITER ','"
```

Per informazioni dettagliate sul comando `\copy`, consulta la pagina [psql](http://www.postgresql.org/docs/current/static/app-psql.html) nella documentazione di PostgreSQL, nella sezione *Meta-comandi*. 