This free online SQL Server to PostgreSQL SQL converter translates your CREATE TABLE DDL scripts between dialects instantly — with no server upload, no account, and no rate limits. Paste your SQL Server schema on the left and the converted PostgreSQL DDL appears on the right in real time. All conversion logic runs entirely in your browser, keeping your database schema 100% private and secure.
Code & Data Generator
How SQL Server column types map to their PostgreSQL equivalents, with migration notes for each type.
| SQL Server Type | PostgreSQL Equivalent | Notes |
|---|---|---|
| INT IDENTITY(1,1) | SERIAL | Or INTEGER DEFAULT nextval(seq) |
| BIGINT IDENTITY(1,1) | BIGSERIAL | — |
| BIT | BOOLEAN | PostgreSQL native BOOL |
| NVARCHAR(n) / VARCHAR(n) | VARCHAR(n) | PostgreSQL is Unicode by default |
| NVARCHAR(MAX) | TEXT | Unlimited text |
| NTEXT / TEXT | TEXT | — |
| DATETIME / DATETIME2 | TIMESTAMP | Or TIMESTAMPTZ for timezone-awareness |
| DATETIMEOFFSET | TIMESTAMP WITH TIME ZONE | — |
| SMALLDATETIME | TIMESTAMP | Lower precision; still maps to TIMESTAMP |
| UNIQUEIDENTIFIER | UUID | PostgreSQL native UUID type |
| VARBINARY(n) / VARBINARY(MAX) | BYTEA | — |
| IMAGE | BYTEA | Deprecated SQL Server type |
| MONEY / SMALLMONEY | NUMERIC(p,s) | Use NUMERIC for exact monetary values |
| NVARCHAR(MAX) (JSON) | JSONB | Add GIN index after migration |
| TINYINT | SMALLINT | PostgreSQL has no TINYINT; min is SMALLINT |
| FLOAT | DOUBLE PRECISION | — |
| REAL | REAL | — |
Everything you need to know about converting SQL Server to PostgreSQL.
Paste your SQL Server CREATE TABLE statements into the SQL editor on the left. The PostgreSQL output appears instantly on the right panel in real-time as you type.
Yes — completely. The entire conversion runs inside your browser using JavaScript. Your SQL is never sent to any server, logged, or stored anywhere. This makes it safe to use with production or confidential database schemas.
PostgreSQL, MySQL, SQLite, SQL Server, Oracle, and MariaDB DDL syntax are all supported. The parser auto-detects the dialect from your CREATE TABLE syntax automatically.
Yes! Paste multiple CREATE TABLE statements separated by semicolons and all tables will be converted simultaneously, including cross-table foreign key relationships.
Yes. NULL, NOT NULL, DEFAULT values, PRIMARY KEY, UNIQUE, and FOREIGN KEY constraints are all parsed and reflected in the PostgreSQL output. Nullable columns are correctly typed as optional properties or nullable types.
Yes, SchemaForge is completely free with no usage limits, no account required, and no rate limits. The tool runs entirely in your browser and will always be free.