方言

方言 是 SQLAlchemy 用于与各种类型的 DBAPI 实现和数据库进行通信的系统。以下各节包含特定于每个后端使用的参考文档和说明,以及针对各种 DBAPI 的说明。

所有方言都需要安装相应的 DBAPI 驱动程序。

包含的方言

包含的方言支持的版本

下表总结了每个包含的方言的支持级别。

包含的方言支持的数据库版本

数据库

支持的版本

尽力而为

Microsoft SQL Server

2012+

2005+

MySQL / MariaDB

5.6+ / 10+

5.0.2+ / 5.0.2+

Oracle

11+

9+

PostgreSQL

9.6+

9+

SQLite

3.12+

3.7.16+

支持定义

支持的版本

支持的版本 表示大多数 SQLAlchemy 特性应该适用于提到的数据库版本。由于并非所有数据库版本都在 CI 中进行测试,因此可能存在一些不支持的边缘情况。

尽力而为

尽力而为 表示 SQLAlchemy 尝试在这些版本上支持基本特性,但大多数情况下,在某些用例中可能存在不支持的特性或错误。带有相关问题的拉取请求可能会被接受,以继续支持旧版本,这些版本将逐案进行审查。

外部方言

当前为 SQLAlchemy 维护的外部方言项目包括

数据库

方言

Actian Data Platform、Vector、Actian X、Ingres

sqlalchemy-ingres

Amazon Athena

pyathena

Amazon Redshift(通过 psycopg2)

sqlalchemy-redshift

Apache Drill

sqlalchemy-drill

Apache Druid

pydruid

Apache Hive 和 Presto

PyHive

Apache Solr

sqlalchemy-solr

Clickhouse

clickhouse-sqlalchemy

CockroachDB

sqlalchemy-cockroachdb

CrateDB

sqlalchemy-cratedb

Databend

databend-sqlalchemy

Databricks

databricks

EXASolution

sqlalchemy_exasol

Elasticsearch(只读)

elasticsearch-dbapi

Firebird

sqlalchemy-firebird

Firebolt

firebolt-sqlalchemy

Google BigQuery

sqlalchemy-bigquery

Google Sheets

gsheets

Greenplum

sqlalchemy-greenplum

IBM DB2 和 Informix

ibm-db-sa

IBM Netezza Performance Server [1]

nzalchemy

Impala

impyla

Kinetica

sqlalchemy-kinetica

Microsoft Access(通过 pyodbc)

sqlalchemy-access

Microsoft SQL Server(通过 python-tds)

sqlalchemy-pytds

Microsoft SQL Server(通过 turbodbc)

sqlalchemy-turbodbc

MonetDB

sqlalchemy-monetdb

OpenGauss

openGauss-sqlalchemy

Rockset

rockset-sqlalchemy

SAP ASE(前 Sybase 方言的派生版本)

sqlalchemy-sybase

SAP Hana [1]

sqlalchemy-hana

SAP Sybase SQL Anywhere

sqlalchemy-sqlany

Snowflake

snowflake-sqlalchemy

Teradata Vantage

teradatasqlalchemy

TiDB

sqlalchemy-tidb

YugabyteDB

sqlalchemy-yugabytedb