---
title: "Converter CSV para PostgreSQL"
description: "Converta arquivos CSV para SQL do PostgreSQL no seu navegador: um CREATE TABLE com colunas tipadas e depois comandos INSERT. Grátis, e seu arquivo nunca é enviado."
canonical: https://intosql.com/pt-br/csv-para-postgresql
last_updated: 2026-10-15
---

# Converter CSV para PostgreSQL

Solte seu arquivo CSV e receba um script para PostgreSQL com comandos CREATE TABLE e INSERT. Cada coluna recebe um tipo, e cada correção é listada com sua linha e coluna.

## De CSV para PostgreSQL, coluna por coluna

O exemplo acima, ventas_2024.csv, como o IntoSQL o escreve para PostgreSQL: o que cada coluna contém no arquivo, o tipo que recebe e como seu primeiro valor fica no script.

| No arquivo | Primeiro valor | Coluna | Tipo no PostgreSQL | No 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` |

## Carregue o script no PostgreSQL

O download é um arquivo .sql simples. Execute-o com as ferramentas do próprio PostgreSQL.

### PostgreSQL

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

ON_ERROR_STOP faz o psql parar no primeiro erro. O script roda em uma única transação, então uma carga que falha deixa o banco de dados como estava. No pgAdmin ou no DBeaver, abra o script em uma janela de consulta e execute-o.

Sem script:

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

## O que o IntoSQL lê em arquivos CSV

- A codificação é detectada, incluindo Windows-1252 e UTF-16, então acentos e ç chegam intactos.
- O separador é detectado: vírgula, ponto e vírgula, tabulação ou barra vertical. Com ponto e vírgula, vírgulas decimais como 1.234,50 são lidas como números.
- Valores entre aspas podem conter separadores e quebras de linha.

## O que saber sobre PostgreSQL

- Decimais mantêm os dígitos exatos como numeric(p,s), e datas com fuso viram timestamptz.
- O texto do PostgreSQL não aceita o caractere NUL, então ele é removido dos valores que o têm.
- O script roda em uma única transação, então uma carga que falha não deixa nada pela metade.

### Como cada tipo de valor é armazenado no PostgreSQL

| Valor | PostgreSQL |
| --- | --- |
| Sim e não | `boolean` |
| Números inteiros | `integer` |
| Números inteiros grandes | `bigint` |
| Decimais | `numeric(p,s)` |
| Números de ponto flutuante | `double precision` |
| Datas | `date` |
| Horários | `time` |
| Datas com hora | `timestamp` |
| Datas com hora e fuso | `timestamptz` |
| Texto | `text` |

## Perguntas sobre CSV para PostgreSQL

### Como converto CSV para PostgreSQL?

Solte seu arquivo no conversor no topo desta página. Ele encontra o cabeçalho, lê cada valor e escreve o script para PostgreSQL, listando cada correção feita. Baixe o script e execute-o com psql.

### E se meu CSV usar ponto e vírgula ou tabulação?

O separador é detectado: vírgula, ponto e vírgula, tabulação ou barra vertical. Você também pode defini-lo em Mais opções. Com ponto e vírgula, vírgulas decimais como 1.234,50 são lidas como números.

### Quais tipos do PostgreSQL ele usa?

Valores sim e não viram boolean, números inteiros integer, decimais numeric(p,s), datas date, datas com hora timestamp e texto text. Os tamanhos vêm do valor mais longo de cada coluna.

### Ele mantém os zeros à esquerda no PostgreSQL?

Sim. Um código como 00412 continua como texto, então o PostgreSQL o guarda como text e o script o escreve como '00412'.

### Ele carrega os dados no PostgreSQL sem um script?

Sim, com o IntoSQL Pro. O app para desktop e a linha de comando se conectam ao PostgreSQL e carregam as linhas direto, criando a tabela antes.

### Qual o tamanho máximo do arquivo CSV?

O navegador lê o CSV à medida que ele chega, então arquivos de vários gigabytes funcionam. Em um notebook com Apple M4, a linha de comando converte um CSV de 174 MB com um milhão de linhas em menos de um segundo.

## CSV para outros bancos de dados

- [Converter CSV para SQL](https://intosql.com/pt-br/csv-para-sql)
- [Converter CSV para MySQL](https://intosql.com/pt-br/csv-para-mysql)
- [Converter CSV para MariaDB](https://intosql.com/pt-br/csv-para-mariadb)
- [Converter CSV para SQLite](https://intosql.com/pt-br/csv-para-sqlite)
- [Converter CSV para SQL Server](https://intosql.com/pt-br/csv-para-sql-server)
- [Converter CSV para Oracle](https://intosql.com/pt-br/csv-para-oracle)

## Outros arquivos para PostgreSQL

- [Converter Excel para PostgreSQL](https://intosql.com/pt-br/excel-para-postgresql)
- [Converter JSON para PostgreSQL](https://intosql.com/pt-br/json-para-postgresql)
