Dialects

The dialect is the system SQLAlchemy uses to communicate with various types of DBAPI implementations and databases. The sections that follow contain reference documentation and notes specific to the usage of each backend, as well as notes for the various DBAPIs.

All dialects require that an appropriate DBAPI driver is installed.

Included Dialects

Support Levels for Included Dialects

The following table summarizes the support level for each included dialect.

Supported database versions for included dialects

Database

Fully tested in CI

Normal support

Best effort

Microsoft SQL Server

2017

2012+

2005+

MySQL / MariaDB

5.6, 5.7, 8.0 / 10.8, 10.9

5.6+ / 10+

5.0.2+ / 5.0.2+

Oracle

18c

11+

8+

PostgreSQL

12, 13, 14, 15

9.6+

8+

SQLite

3.36.0

3.12+

3.7.16+

Support Definitions

Fully tested in CI

Fully tested in CI indicates a version that is tested in the sqlalchemy CI system and passes all the tests in the test suite.

Normal support

Normal support indicates that most features should work, but not all versions are tested in the ci configuration so there may be some not supported edge cases. We will try to fix issues that affect these versions.

Best effort

Best effort indicates that we try to support basic features on them, but most likely there will be unsupported features or errors in some use cases. Pull requests with associated issues may be accepted to continue supporting older versions, which are reviewed on a case-by-case basis.

Deprecated, no longer supported dialects

The following dialects have implementations within SQLAlchemy, but they are not part of continuous integration testing nor are they actively developed. These dialects are deprecated and will be removed in future major releases.

Note that both of these dialects now have third-party implementations that are maintained separately. See the following list.

External Dialects

Currently maintained external dialect projects for SQLAlchemy include:

Database

Dialect

Actian Avalanche, Vector, Actian X, and Ingres

sqlalchemy-ingres

Amazon Athena

pyathena

Amazon Redshift (via psycopg2)

sqlalchemy-redshift

Apache Drill

sqlalchemy-drill

Apache Druid

pydruid

Apache Hive and Presto

PyHive

Apache Solr

sqlalchemy-solr

CockroachDB

sqlalchemy-cockroachdb

CrateDB

crate-python

EXASolution

sqlalchemy_exasol

Elasticsearch (readonly)

elasticsearch-dbapi

Firebird

sqlalchemy-firebird

Firebolt

firebolt-sqlalchemy

Google BigQuery

pybigquery

Google Sheets

gsheets

IBM DB2 and Informix

ibm-db-sa

IBM Netezza Performance Server [1]

nzalchemy

Microsoft Access (via pyodbc)

sqlalchemy-access

Microsoft SQL Server (via python-tds)

sqlalchemy-tds

Microsoft SQL Server (via turbodbc)

sqlalchemy-turbodbc

MonetDB [1]

sqlalchemy-monetdb

OpenGauss

openGauss-sqlalchemy

SAP ASE (fork of former Sybase dialect)

sqlalchemy-sybase

SAP Hana [1]

sqlalchemy-hana

SAP Sybase SQL Anywhere

sqlalchemy-sqlany

Snowflake

snowflake-sqlalchemy

Teradata Vantage

teradatasqlalchemy