Want to export data from PostgreSQL table to SQL file for upserting?
Upsert: inserts rows into a table if they do not already exist, or updates them if they do.
Try Withdata DBToFile, a PostgreSQL to SQL converter for Windows, Linux, and macOS, Export PostgreSQL data to SQL, Easy and Fast.
Export data from PostgreSQL table to SQL file for upserting
Choose PostgreSQL and logon.

Click “Export From Table” at task dialog.

Select SQL file type.

1. Select PostgreSQL table.

2. Enter data file name.
Set “Convert Mode” to “Upsert”, enter “Update Key”.

3. Set rows options.

4. Export.

After exporting, you can view output upserting SQL file.

You can schedule and automate this converting task by:
- Save session and create .bat (Windows) or .sh (Linux/macOS) file for “PostgreSQL to SQL” conversion.
- Set scheduled task for “PostgreSQL to SQL” conversion.
FAQ
More about Withdata DBToFile – PostgreSQL to SQL converter
PostgreSQL → SQL reference
Type mapping
| Value kind | in PostgreSQL | in SQL |
|---|---|---|
| Int | integer | INT |
| Bigint | bigint | BIGINT |
| Decimal | numeric(p,s) | DECIMAL(p,s) |
| Float | double precision | DOUBLE PRECISION |
| Text | varchar(n) | VARCHAR(n) |
| Long text | text | TEXT / CLOB |
| Date | date | DATE |
| Datetime | timestamp | TIMESTAMP |
| Binary | bytea | BLOB / BYTEA |
| Boolean | boolean | BOOLEAN / SMALLINT |
| JSON | jsonb | JSON / TEXT |
Dialect differences
PostgreSQL is a database server and SQL is a file format, so the gap is wider than a dialect difference – the rows below are where values and structure stop lining up.
| Property | in PostgreSQL | in SQL |
|---|---|---|
| port | 5432 | — |
| identifiers | "double quotes" | Two competing conventions: single-quoted literals and diale... |
| row limit | LIMIT n | — |
| dates | timestamp, timestamptz, date, time | Depends on the dialect: DATE literals, TO_DATE(), or plain ... |
| long text | TEXT | — |
| binary | BYTEA | Dialect-specific: X-quoted literal, 0x hex, or decode() |
| separator | — | Statement terminators (;) |
| encoding | — | No declaration |
| typing | — | Types belong to the target database, and they differ betwee... |
| shape | Tables of rows and columns | Statements; a dump usually means CREATE TABLE plus INSERT rows |
| ceiling | — | No formal limit, but a single INSERT statement has to fit i... |
Command line
| Side | Command |
|---|---|
| PostgreSQL | pg_dump or COPY ... TO |
| PostgreSQL (load) | COPY ... FROM |
Convert your data online, free
Free in-browser converters for CSV, Excel, JSON, XML and SQL: Withdata Online Data Conversion. Large files, batch conversion or scheduling? See the offline desktop apps, or browse all data conversion tools.
