Skip to content
suprio-amzn edited this page Jun 17, 2023 · 7 revisions

Welcome to Babelfish for PostgreSQL

Babelfish for PostgreSQL is an open source project available under the Apache 2.0 and PostgreSQL licenses. It provides the capability for PostgreSQL to work with applications written for Microsoft SQL Server. Babelfish understands the SQL Server wire-protocol and T-SQL, the Microsoft SQL Server query language, so you don’t have to switch database drivers or re-write all of your application queries. With Babelfish, applications currently running on SQL Server can now run directly on PostgreSQL with fewer code changes.

Features

  • Provides an additional endpoint for a PostgreSQL database that allows it to understand the SQL Server TDS wire-level protocol and commonly used SQL Server statements.
  • Support for a wide variety of T-SQL features including data types, system catalog views, functions and stored procedures
  • Support for collations supported by SQL Server by mapping them to comparable collations provided by Babelfish.
  • Support for encryption using configurable SSL/TLS support.
  • Support for username/password based authentication as well as using Kerberos.
  • Support for the SQL Server security model - permissions and ownership of securables.
  • Query Plan improvement features such as support for explain plan and query hints.
  • Limited support for Linked Servers.

In addition, a standalone compatibility assessment tool called Babelfish Compass is provided, which can be used by users to quickly analyze T-SQL DDL/SQL scripts for compatibility with Babelfish. An executable version of the tool can be dowloaded from here.

Getting Started

Get instructions for downloading and setting up Babelfish at the following page Building from Source.

Releases

Babelfish for PostgreSQL releases are done in github. Please see the Babelfish Releases page.

Contributing to Babelfish

You are welcome to send pull requests to contribute to the Babelfish code base! Check Contributing to Babelfish for guidelines.

Contact

We use Github issues for bug reports and other help. Please visit one of the below repositories and open an issue report.

Please make sure that the steps to reproduce the issue, your software versions, and all other relevant information about your installation is included in the report to make it easier to reproduce the issue and track down the cause. If the issue is causing a crash, a gdb backtrace is highly appreciated.