babelfishpg_common

SQL Server Transact SQL Datatype Support

Overview

PackageVersionCategoryLicenseLanguage
babelfish5.5.0SIMApache-2.0C
IDExtensionBinLibLoadCreateTrustRelocSchema
9300babelfishpg_commonNoYesNoYesNoYes-
9310babelfishpg_tsqlNoYesNoYesNoYes-
9320babelfishpg_tdsNoYesYesYesNoYes-
9330babelfishpg_moneyNoYesNoYesYesNo-
Relatedtds_fdw babelfishpg_tds babelfishpg_money pg_hint_plan uuid-ossp session_variable orafce pgtt
Depended Bybabelfishpg_tsql

special case: this extension only works on wiltondb kernel fork

Version

TypeRepoVersionPG VerPackageDeps
EXTPIGSTY5.5.01817161514babelfish-
RPMPIGSTY5.5.01817161514babelfish_$vbabelfishpg_$v, antlr4-runtime413
DEBPIGSTY5.5.01817161514babelfishpg-$v-babelfishbabelfishpg-$v, libantlr4-runtime413
OS / PGPG18PG17PG16PG15PG14
el8.x86_64PIGSTY MISSPIGSTY MISSPIGSTY MISSPIGSTY MISS
el8.aarch64PIGSTY MISSPIGSTY MISSPIGSTY MISSPIGSTY MISS
el9.x86_64PIGSTY MISSPIGSTY MISSPIGSTY MISSPIGSTY MISS
el9.aarch64PIGSTY MISSPIGSTY MISSPIGSTY MISSPIGSTY MISS
el10.x86_64PIGSTY MISSPIGSTY MISSPIGSTY MISSPIGSTY MISS
el10.aarch64PIGSTY MISSPIGSTY MISSPIGSTY MISSPIGSTY MISS
d12.x86_64PIGSTY MISSPIGSTY MISSPIGSTY MISSPIGSTY MISS
d12.aarch64PIGSTY MISS
PIGSTY 5.5.0
PIGSTY MISSPIGSTY MISSPIGSTY MISS
d13.x86_64PIGSTY MISS
PIGSTY 5.5.0
PIGSTY MISSPIGSTY MISSPIGSTY MISS
d13.aarch64PIGSTY MISS
PIGSTY 5.5.0
PIGSTY MISSPIGSTY MISSPIGSTY MISS
u22.x86_64PIGSTY MISS
PIGSTY 5.5.0
PIGSTY MISSPIGSTY MISSPIGSTY MISS
u22.aarch64PIGSTY MISS
PIGSTY 5.5.0
PIGSTY MISSPIGSTY MISSPIGSTY MISS
u24.x86_64PIGSTY MISS
PIGSTY 5.5.0
PIGSTY MISSPIGSTY MISSPIGSTY MISS
u24.aarch64PIGSTY MISS
PIGSTY 5.5.0
PIGSTY MISSPIGSTY MISSPIGSTY MISS

Build

You can build the RPM / DEB packages for babelfish using pig build:

pig build pkg babelfish         # build RPM / DEB packages

Install

You can install babelfish directly. First, make sure the PGDG and PIGSTY repositories are added and enabled:

pig repo add pgsql -u          # Add repo and update cache

Install the extension using pig or apt/yum/dnf:

pig install babelfish;          # Install for current active PG version
pig ext install -y babelfish -v 17  # PG 17
dnf install -y babelfish_17       # PG 17
apt install -y babelfishpg-17-babelfish   # PG 17

Create Extension:

CREATE EXTENSION babelfishpg_common;

Usage

babelfishpg_common: SQL Server Transact SQL Datatype Support

The babelfishpg_common extension provides SQL Server-compatible data type support for PostgreSQL as part of the Babelfish project. It enables PostgreSQL to understand and work with Microsoft SQL Server data types.

Enabling

CREATE EXTENSION babelfishpg_common;

SQL Server Data Types

The extension adds the following SQL Server-compatible data types:

  • TINYINT - 1-byte unsigned integer (0 to 255)
  • SMALLMONEY - Small monetary value
  • MONEY - Monetary value (see also babelfishpg_money)
  • DATETIME - SQL Server-style datetime
  • DATETIME2 - Extended precision datetime
  • SMALLDATETIME - Reduced precision datetime
  • DATETIMEOFFSET - Date and time with timezone offset
  • BIT - SQL Server-compatible boolean
  • NCHAR / NVARCHAR - Unicode character types
  • UNIQUEIDENTIFIER - SQL Server-style UUID
  • VARBINARY - Variable-length binary data
  • IMAGE - Legacy binary data type
  • SQL_VARIANT - Generic data type container
  • XML - SQL Server-compatible XML type
  • SYSNAME - System name type (nvarchar(128))

Key Features

  • Provides implicit and explicit type casting between SQL Server and PostgreSQL types
  • Supports SQL Server-style collation behavior
  • Handles SQL Server-specific type coercion rules
  • Works in conjunction with babelfishpg_tsql for full T-SQL compatibility

This extension is typically deployed as part of a full Babelfish for PostgreSQL installation and is a prerequisite for babelfishpg_tsql.


Last Modified 2026-03-12: add pg extension catalog (95749bf)