Want to batch export data from PostgreSQL tables to XML files?
Try Withdata DBToFile, a PostgreSQL to XML converter for Windows, Linux, and macOS, Export PostgreSQL data to XML, 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.
- Support Windows, Linux, and macOS.
Download Withdata DBToFile
Windows 64 bit
Windows 32 bit
Linux .deb (For Debian, Ubuntu) 64 bit
Linux .rpm (For Red Hat, Fedora, SUSE) 64 bit
MacOS 64 bit
Batch export data from PostgreSQL tables to XML files
Login to PostgreSQL -> Select PostgreSQL tables -> Set XML file options -> Export PostgreSQL tables to XML
Choose PostgreSQL and logon.
Click “Export All Tables” at task dialog.
Select XML file type.
1. Select PostgreSQL tables to export.
2. Set XML options.
3. See PostgreSQL tables to be exported.
4. Set rows options.
5. Export PostgreSQL data to XML files.
After exporting, you can view output XML files.
More about PostgreSQL to XML converter
Download Withdata DBToFile
Windows 64 bit
Windows 32 bit
Linux .deb (For Debian, Ubuntu) 64 bit
Linux .rpm (For Red Hat, Fedora, SUSE) 64 bit
MacOS 64 bit
See Video: Bulk export data from PostgreSQL tables to XML files in a few clicks
See also:
- Export PostgreSQL table to XML
- Export PostgreSQL query results to XML
- Export multiple similar PostgreSQL tables to one XML file
PostgreSQL → XML reference
Type mapping
| Value kind | in PostgreSQL | in XML |
|---|---|---|
| Int | integer | <int>1234</int> |
| Bigint | bigint | <bigint>9007199254740993</bigint> |
| Decimal | numeric(p,s) | <decimal>1234.56</decimal> |
| Float | double precision | <float>1.234e10</float> |
| Text | varchar(n) | <char>text</char> |
| Long text | text | <text>multi-line text</text> (entities for & <) |
| Date | date | <date>2026-09-18</date> (xs:date with an XSD) |
| Datetime | timestamp | <datetime>2026-09-18T14:30:00Z</datetime> (xs:dateTime) |
| Binary | bytea | <blob>base64...</blob> (xs:base64Binary) |
| Boolean | boolean | <bool>true</bool> |
| JSON | jsonb | escaped inside an element, or its own sub-tree |
Dialect differences
PostgreSQL is a database server and XML 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 XML |
|---|---|---|
| port | 5432 | — |
| identifiers | "double quotes" | Attribute values in quotes; entities (& < >) for ... |
| row limit | LIMIT n | — |
| dates | timestamp, timestamptz, date, time | Text (xs:date / xs:dateTime when an XSD is in play) |
| long text | TEXT | — |
| binary | BYTEA | base64Binary / hexBinary inside text |
| separator | — | Tags, not delimiters |
| encoding | — | Declared in the XML declaration |
| typing | — | None in the markup itself |
| shape | Tables of rows and columns | Arbitrary tree |
| ceiling | — | Whole document is usually parsed into memory |
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.