方言

方言是 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

HyperSQL (hsqldb)

sqlalchemy-hsqldb

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

YDB

ydb-sqlalchemy

YugabyteDB

sqlalchemy-yugabytedb