PgDesigner

Import & Reverse Engineer PostgreSQL Schemas

Coming from another tool? Connect to a live database? One command converts any source into a PgDesigner project.

Five sources, one output

PgDesigner reads schemas from five different sources and converts them into its native .pgd format. The conversion is lossless — tables, columns, indexes, foreign keys, constraints, enums, domains, sequences, views, functions, triggers, and comments are all preserved.

MicroOLAP Database Designer

.pdd — native XML format. MicroOLAP hasn't been updated since 2021, but your projects aren't lost.

DbSchema

.dbs — XML-based schema files from DbSchema.

Toad Data Modeler

.dm2 — XML format from Quest Toad Data Modeler.

Plain SQL / pg_dump

.sql — any PostgreSQL DDL file, including pg_dump output. Parsed with the real PG17 parser (via WebAssembly).

Reverse engineering from a live database

Pass a PostgreSQL connection string instead of a file path. PgDesigner connects to your database and introspects the full schema via pg_catalog queries:

pgdesigner convert "postgres://user:pass@localhost:5432/mydb" -o project.pgd

What gets extracted:

  • Tables, columns (types, defaults, identity, nullable, storage, compression, comments)
  • Indexes (btree, hash, gin, gist, brin — with INCLUDE columns)
  • Foreign keys, primary keys, UNIQUE, CHECK, EXCLUDE constraints
  • Enums, domains, composite types, ranges
  • Sequences (with ownership)
  • Views and materialized views
  • Functions and triggers
  • RLS policies
  • Partitions (RANGE, LIST, HASH — with bounds)
  • Comments on all object types

CLI

pgdesigner convert schema.pdd -o project.pgd
pgdesigner convert schema.dbs -o project.pgd
pgdesigner convert schema.dm2 -o project.pgd
pgdesigner convert schema.sql -o project.pgd
pgdesigner convert "postgres://localhost:5432/mydb" -o project.pgd

The -o flag sets the output file. Without it, PgDesigner uses the input filename with a .pgd extension.

Migrating from MicroOLAP?

MicroOLAP Database Designer for PostgreSQL hasn't been updated since July 2021. If you have .pdd project files, PgDesigner reads them natively — no intermediate steps, no data loss. Convert and open in the visual editor in seconds:

pgdesigner convert myproject.pdd -o myproject.pgd
pgdesigner myproject.pgd