Release: 1.4.51 | Release Date: January 2, 2024

# SQLAlchemy 1.4 Documentation

# 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

- PostgreSQL
- MySQL and MariaDB
- SQLite
- Oracle
- Microsoft SQL Server

### 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.

- Firebird
- Sybase

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

[1] (1,2,3)

Supports version 1.3.x only at the moment.