我正在尝试在python中编写通用数据库连接器类。为此,我想首先检查机器上安装了哪些驱动程序,如果机器中缺少所需的驱动程序,则会抛出错误。
有没有办法在python中执行此操作?
答案 0 :(得分:11)
我意识到这是一个迟到的回复...但我自己偶然发现了答案;如果其他人正在寻找答案。
pyodbc 有一个方法,它返回已安装的ODBC驱动程序列表。当然,它只是一个驱动程序名称的列表,所以它有点繁琐地获得最新的驱动程序,但希望这会有所帮助。
我使用正则表达式(通过内置的 re
模块)过滤到我需要的驱动程序。
import pyodbc
pyodbc.drivers()
输出提供已安装的ODBC驱动程序列表。
答案 1 :(得分:1)
Python中没有任何内容可以让你这样做,除了可能用ctypes做一些非常难看的东西,我不确定这是否有用。但是,您可以使用Tim Golden的wmi.py模块来完成。
我找到了使用WMI查找常规驱动程序的示例:
所以你可能不得不以某种方式过滤列表。