Babelfish for PostgreSQL is an Apache-2.0 open source project that adds a Microsoft SQL Server-compatible end-point to PostgreSQL to enable your PostgreSQL database to understand the SQL Server wire protocol and commonly used SQL Server commands. With Babelfish, applications that were originally built for SQL Server can work directly with PostgreSQL, with little to no code changes, and without changing database drivers.

Babelfish for PostgreSQL will be available on Github in 2021.

Babelfish Desktop diagram Babelfish Mobile diagram

Babelfish for PostgreSQL adds an endpoint to PostgreSQL that understands the SQL Server wire protocol Tabular Data Stream (TDS), and commonly used T-SQL programming language constructs used by SQL Server. Support for T-SQL includes elements such as the SQL dialect, cursors, catalog views, data types, triggers, stored procedures, and functions.

Complete migrations from SQL Server to PostgreSQL faster, saving months to years of work from changing application code
Build new functionality by running PostgreSQL code side-by-side with your existing T-SQL code
Uses the permissive Apache 2.0 license. Contribute and help steer the direction of Babelfish to meet your application needs
Why did you develop Babelfish for PostgreSQL?
We built Babelfish for PostgreSQL to make it easier to migrate applications from SQL Server to PostgreSQL. Today, there are a number of ways to migrate your data and database schema from SQL Server to PostgreSQL. However, once the initial database migration is done, manually re-writing application code, switching out database drivers, and verifying that the application behavior hasn’t changed requires significant effort. As a result, organizations struggle to start these types of projects because of the opportunity cost of tying up developers, and the risk of introducing errors when making extensive changes to the application code.
When will Babelfish for PostgreSQL be available on GitHub?
Babelfish for PostgreSQL will be available on Github in 2021.
Who can contribute to Babelfish for PostgreSQL?
Anyone! We will make it easy for developers, SQL Server experts, and PostgreSQL experts from all organizations to help guide the direction of Babelfish for PostgreSQL. We are planning to provide samples and training to help people that are new to open source projects get a running start.
How is Babelfish for PostgreSQL licensed?
We will release Babelfish for PostgreSQL on the permissive Apache-2.0 license, allowing you to freely use, copy, and distribute your changes under the terms of your choice.
What programming language is Babelfish for PostgreSQL written in?
Babelfish is written in C, which is the same programming language used to develop PostgreSQL. Some parts of Babelfish are developed using procedural language in PL/pgSQL. Many test cases are written in PL/pgSQL and T-SQL.
How can I contribute?
You can contribute by adding or extending Babelfish functionality, submitting feature requests, working on documentation, and contributing test cases.