

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.

# Utilisation de la commande \$1copy pour importer des données dans une table sur une instance de base de données PostgreSQL
<a name="PostgreSQL.Procedural.Importing.Copy"></a>

La commande PostgreSQL `\copy` est une méta-commande disponible à partir de l'outil client interactif `psql`. Vous pouvez utiliser `\copy` pour importer des données dans une table sur votre instance de base de données RDS pour PostgreSQL. Pour utiliser la commande `\copy`, vous devez d'abord créer la structure de la table sur l'instance de base de données cible, afin que `\copy` dispose d'une destination pour les données copiées.

Vous pouvez utiliser `\copy` pour charger des données à partir d'un fichier CSV (valeurs séparées par des virgules), par exemple un fichier qui a été exporté et enregistré sur votre poste de travail client.

Pour importer les données CSV vers l’instance de base de données RDS pour PostgreSQL cible, connectez-vous d’abord à l’instance de base de données cible à l’aide de `psql`. 

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

Exécutez ensuite la commande `\copy` avec les paramètres suivants afin d'identifier la cible pour les données et son format.
+ `target_table` : nom de la table devant recevoir les données copiées à partir du fichier CSV.
+ `column_list` : spécifications des colonnes pour la table. 
+ `'filename'` : chemin d'accès complet vers le fichier CSV sur votre poste de travail local. 

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

Si votre fichier CSV contient des informations d'en-tête de colonne, vous pouvez utiliser cette version de la commande et des paramètres.

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

 Si la commande `\copy` échoue, PostgreSQL renvoie des messages d'erreur.

Création d’une nouvelle instance de base de données dans la commande `psql` de l’environnement de version préliminaire de base de données avec la méta-commande `\copy` telle qu’illustrée dans les exemples suivants. Cet exemple utilise *source-table* comme nom de tableau source, *source-table.csv* comme fichier .csv et *target-db* comme base de données cible :

Pour Linux, macOS ou Unix :

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

Pour Windows :

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

Pour plus de détails sur la commande `\copy`, consultez la page [psql](http://www.postgresql.org/docs/current/static/app-psql.html) dans la documentation PostgreSQL, au sein de la section *Meta-Commands*. 