---
title: "Convertir CSV en PostgreSQL"
description: "Convertissez des fichiers CSV en SQL pour PostgreSQL dans le navigateur : CREATE TABLE typé, puis INSERT. Gratuit, votre fichier n'est jamais envoyé."
canonical: https://intosql.com/fr/csv-en-postgresql
last_updated: 2026-10-15
---

# Convertir CSV en PostgreSQL

Déposez votre fichier CSV pour obtenir un script PostgreSQL avec des instructions CREATE TABLE et INSERT. Chaque colonne reçoit un type, et chaque correction est listée avec sa ligne et sa colonne.

## De CSV à PostgreSQL, colonne par colonne

L'exemple ci-dessus, ventas_2024.csv, tel qu'IntoSQL l'écrit pour PostgreSQL : ce que contient chaque colonne du fichier, le type qu'elle reçoit et comment sa première valeur apparaît dans le script.

| Dans le fichier | Première valeur | Colonne | Type PostgreSQL | Dans le script |
| --- | --- | --- | --- | --- |
| Folio | `00412` | `folio` | `text` | `'00412'` |
| Cliente | `Peña Muñoz` | `cliente` | `text` | `'Peña Muñoz'` |
| Ciudad | `Mérida` | `ciudad` | `text` | `'Mérida'` |
| Fecha | `15/02/2024` | `fecha` | `date` | `'2024-02-15'` |
| Importe | `1.234,50` | `importe` | `numeric(6,2)` | `1234.50` |
| Pagado | `sí` | `pagado` | `boolean` | `TRUE` |

## Charger le script dans PostgreSQL

Le téléchargement est un simple fichier .sql. Exécutez-le avec les outils de PostgreSQL.

### PostgreSQL

```shell
psql -v ON_ERROR_STOP=1 -d mydb -f ventas_2024.postgresql.sql
```

ON_ERROR_STOP arrête psql à la première erreur. Le script s'exécute dans une seule transaction, donc un chargement raté laisse la base de données intacte. Dans pgAdmin ou DBeaver, ouvrez le script dans une fenêtre de requête et exécutez-le.

Sans script:

```shell
intosql load ventas_2024.csv --into postgres://user@localhost/mydb
```

## Ce qu'IntoSQL lit dans les fichiers CSV

- L'encodage est détecté, Windows-1252 et UTF-16 compris, donc les accents et le ñ arrivent intacts.
- Le séparateur est détecté : virgule, point-virgule, tabulation ou barre verticale. Avec un point-virgule, les virgules décimales comme 1.234,50 sont lues comme des nombres.
- Les valeurs entre guillemets peuvent contenir des séparateurs et des sauts de ligne.

## Bon à savoir sur PostgreSQL

- Les décimaux gardent leurs chiffres exacts en numeric(p,s), et les dates avec décalage deviennent timestamptz.
- Le texte PostgreSQL ne peut pas contenir le caractère NUL, il est donc retiré des valeurs qui en ont un.
- Le script s'exécute dans une seule transaction, donc un chargement qui échoue ne laisse rien à moitié fait.

### Comment chaque type de valeur est stocké dans PostgreSQL

| Valeur | PostgreSQL |
| --- | --- |
| Oui et non | `boolean` |
| Nombres entiers | `integer` |
| Grands nombres entiers | `bigint` |
| Décimaux | `numeric(p,s)` |
| Nombres à virgule flottante | `double precision` |
| Dates | `date` |
| Heures | `time` |
| Dates avec heure | `timestamp` |
| Dates avec heure et décalage | `timestamptz` |
| Texte | `text` |

## Questions sur CSV vers PostgreSQL

### Comment convertir CSV en PostgreSQL ?

Déposez votre fichier sur le convertisseur en haut de cette page. Il trouve l'en-tête, lit chaque valeur et écrit le script PostgreSQL, en listant chaque correction. Téléchargez le script et exécutez-le avec psql.

### Et si mon CSV utilise des points-virgules ou des tabulations ?

Le séparateur est détecté : virgule, point-virgule, tabulation ou barre verticale. Vous pouvez aussi le régler dans Plus d'options. Avec un point-virgule, les virgules décimales comme 1.234,50 sont lues comme des nombres.

### Quels types PostgreSQL utilise-t-il ?

Les valeurs oui et non deviennent boolean, les nombres entiers integer, les décimaux numeric(p,s), les dates date, les dates avec heure timestamp et le texte text. Les tailles viennent de la valeur la plus longue de chaque colonne.

### Garde-t-il les zéros en tête dans PostgreSQL ?

Oui. Un code comme 00412 reste du texte, donc PostgreSQL le stocke en text et le script l'écrit '00412'.

### Peut-il charger les données dans PostgreSQL sans script ?

Oui, avec IntoSQL Pro. L'application de bureau et la ligne de commande se connectent à PostgreSQL et chargent les lignes directement, en créant d'abord la table.

### Quelle taille peut avoir le fichier CSV ?

Le navigateur lit le CSV au fil de l'eau, donc des fichiers de plusieurs gigaoctets fonctionnent. Sur un portable Apple M4, la ligne de commande convertit un CSV de 174 Mo d'un million de lignes en moins d'une seconde.

## CSV vers d'autres bases de données

- [Convertir CSV en SQL](https://intosql.com/fr/csv-en-sql)
- [Convertir CSV en MySQL](https://intosql.com/fr/csv-en-mysql)
- [Convertir CSV en MariaDB](https://intosql.com/fr/csv-en-mariadb)
- [Convertir CSV en SQLite](https://intosql.com/fr/csv-en-sqlite)
- [Convertir CSV en SQL Server](https://intosql.com/fr/csv-en-sql-server)
- [Convertir CSV en Oracle](https://intosql.com/fr/csv-en-oracle)

## Autres fichiers vers PostgreSQL

- [Convertir Excel en PostgreSQL](https://intosql.com/fr/excel-en-postgresql)
- [Convertir JSON en PostgreSQL](https://intosql.com/fr/json-en-postgresql)
