Want to import data from Excel file to PostgreSQL ?
Try Withdata FileToDB, a desktop Excel to PostgreSQL converter for Windows, MacOS, and Linux, Convert Excel to PostgreSQL, Easy and Fast.
- Can run in GUI mode, Step by Step, just a few mouse clicks.
- Can run in Command line, for Scheduled Tasks and Streams.
- Import Excel to PostgreSQL locally and privately, avoid uploading Excel file(s) to online services.
- Support Windows, Linux, and macOS.
Import data from Excel file to PostgreSQL
Login to PostgreSQL -> Choose Excel file -> Set PostgreSQL table -> Import Excel to PostgreSQL
Choose PostgreSQL and logon.

Click “Wizard – 1 File To 1 Table” for “Excel to PostgreSQL”.

Select the “Excel” file type.

then show the wizard.
1. Open an Excel file.

Here is the file’s content.

2. Select a PostgreSQL table and config fields.

3. Preview data will be in PostgreSQL table.

4. Import Excel data to PostgreSQL.

View imported data in PostgreSQL table

More about Excel to PostgreSQL converter
See Video: Import data from Excel file to PostgreSQL table in a few clicks
See also:
- Import multiple Excel files to a single PostgreSQL table
- Batch import Excel files to PostgreSQL tables
EXCEL → PostgreSQL reference
Type mapping
| Value kind | in EXCEL | in PostgreSQL |
|---|---|---|
| Int | 1234 (a real numeric cell) | integer |
| Bigint | 9007199254740993 (exact only while the cell stays text) | bigint |
| Decimal | 1234.56 (numeric cell, format controls the displayed decimals) | numeric(p,s) |
| Float | 1.234E+10 (numeric cell) | double precision |
| Text | text cell; leading zeros survive only if the column is text | varchar(n) |
| Long text | text cell; wraps inside the cell rather than the row | text |
| Date | a serial number plus a date cell format | date |
| Datetime | a serial number plus a date-time cell format | timestamp |
| Binary | not representable as data | bytea |
| Boolean | TRUE / FALSE (a real boolean cell) | boolean |
| JSON | a text cell; the quotes are part of the value | jsonb |
Dialect differences
EXCEL is a file format and PostgreSQL is a database server, so the target has to be told the types the file never carried - the rows below are where the two sides diverge.
| Property | in EXCEL | in PostgreSQL |
|---|---|---|
| port | — | 5432 |
| identifiers | Not applicable; a cell holds exactly one value | "double quotes" |
| row limit | — | LIMIT n |
| dates | Stored as a serial number; only the cell format makes it lo... | timestamp, timestamptz, date, time |
| long text | — | TEXT |
| binary | Only as text or an embedded object, not as a data column | BYTEA |
| separator | Cells, not delimiters | — |
| encoding | UTF-8 internally, declared in the package | — |
| typing | Real cell types: text, number, date, boolean, error | — |
| shape | Multiple sheets, each a flat grid | Tables of rows and columns |
| ceiling | 1,048,576 rows x 16,384 columns per sheet; 255 sheets per w... | — |
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.
