驱动程序实现状态

警告

当在同一个进程中使用两个用 Go 编写的驱动程序时(除非在纯 Go 应用程序中工作),macOS x86_64 上存在一个已知问题,即使用第二个驱动程序可能会崩溃。有关更多详细信息,请参阅 GH-1841

实现状态

实验性 驱动程序的功能尚未完成,并且实现仍在进行中。 Beta 驱动程序(大部分)功能已完成,但仅可用了很短的时间。 稳定 驱动程序(大部分)功能已完成(尽可能地针对底层数据库),并且已可用/测试一段时间。

驱动程序

支持的语言 [1]

实现语言

状态

BigQuery

C#

C#

实验性

Flight SQL (Go)

C, Go

Go

稳定

Flight SQL (Java)

Java

Java

实验性

JDBC

Java

Java

实验性

PostgreSQL

C

C++

稳定

SQLite

C

C

稳定

Snowflake

C, Go

Go

稳定

功能支持

N/A 表示在底层数据库中不可能支持此功能。

有关完整详细信息,请参见各个驱动程序文档页面。

批量摄取

驱动程序是否支持 数据的批量摄取(从 Arrow 表创建或追加到数据库表)?

数据库元数据

驱动程序是否支持诸如 AdbcConnectionGetObjects() 之类的函数,这些函数获取有关数据库目录等的元数据?

参数化查询

驱动程序是否支持绑定查询参数?

分区数据

能够读取(通常是分布式的)结果集的各个块 (AdbcStatementExecutePartitions())。

预处理语句

驱动程序是否支持绑定查询参数?

完整类型支持

驱动程序是否尽可能地将所有数据库类型映射到等效的 Arrow 类型,反之亦然?

Select 查询

驱动程序是否支持返回结果集的查询?

SQL

驱动程序是否支持提交 SQL 查询?

事务

驱动程序是否支持显式事务(默认情况下假设自动提交)?

Substrait

驱动程序是否支持提交 Substrait 计划?

更新查询

驱动程序是否支持不返回结果集的查询?

常规功能

驱动程序

完整类型支持

SQL

Substrait

Flight SQL (Go)

Flight SQL (Java)

JDBC

不适用

PostgreSQL

不适用

SQLite

不适用

语句/查询级别功能

驱动程序

增量查询

分区数据

参数化查询

预处理语句

Select 查询

更新查询

Flight SQL (Go)

Flight SQL (Java)

JDBC

不适用

不适用

PostgreSQL

不适用

不适用

[2]

SQLite

不适用

不适用

连接/数据库级别功能

驱动程序

批量摄取

数据库元数据(目录等)

事务

Flight SQL (Go)

Flight SQL (Java)

JDBC

PostgreSQL

SQLite