驱动管理器¶
adbc_driver_manager 包为 Python 提供了一个 驱动程序管理器 接口。该包提供了两种 API:
安装¶
pip install adbc_driver_manager
用法¶
驱动程序管理器不同于诸如 adbc_driver_postgresql 之类的特定于驱动程序的独立包。
对于特定于驱动程序的包,您可以使用该包提供的 connect 方法连接到目标数据库。例如,adbc_driver_postgresql.connect() 或 adbc_driver_sqlite.connect()。驱动程序共享库已打包在相应的包中,并对用户透明地加载。
使用驱动程序管理器包时,无论连接到哪个数据库,您都使用相同的包和 API。但是,用户必须将数据库的驱动程序作为单独的步骤进行安装。驱动程序清单 (Driver manifests) 是改善用户体验的第一步,但未来还有更多工作计划,旨在使其像使用特定于驱动程序的包一样简单。
底层 API¶
首先,创建一个 AdbcDatabase,并传入 driver 以及(可选的)entrypoint。然后,创建一个 AdbcConnection。
注意
有关应向 driver 参数传递什么内容,以及驱动程序管理器如何查找和加载驱动程序的详细信息,请参阅 ADBC 驱动程序管理器和清单。
import adbc_driver_manager
# Note: You must install the driver shared library (.so, .dylib, .dll)
# separately
with adbc_driver_manager.AdbcDatabase(driver="PATH/TO/libadbc_driver_sqlite.so") as db:
with adbc_driver_manager.AdbcConnection(db) as conn:
pass
连接到第二个数据库可以在同一个会话中使用相同的代码完成,只需使用不同的 driver 参数即可。
DBAPI API¶
通过调用 dbapi.connect 方法并传入 driver 和(可选的)entrypoint 来使用 DBAPI。这些参数的工作方式与底层 API 相同。
from adbc_driver_manager import dbapi
# Note: You must install the driver shared library (.so, .dylib, .dll)
# separately
with dbapi.connect(driver="PATH/TO/libadbc_driver_sqlite.so") as conn:
pass
API 参考¶
请参阅 API 参考:adbc_driver_manager。