在谷歌云上使用Pyodbc托管烧瓶应用程序



我正在谷歌云上运行一个flask应用程序,但使用pyodbc一点运气都没有。我最初尝试了

def googleConnection():
conn = pyodbc.connect(
"Driver={SQL Server};"
"Server=server;"
"Database=dbname;"
"UID=username;"
"PWD=password;"
)
return conn 

我在gcloud日志中得到了以下错误:

pyodbc.Error: ('01000', "[01000] [unixODBC][Driver Manager]Can't open lib 'SQL Server' : file not found (0) (SQLDriverConnect)")

它抱怨缺少必要的司机。所以,我运行了一个查询以返回pyodbc.drivers()查看是否有可用的

def googleConnection():
drivers = [item for item in pyodbc.drivers()]
conn = pyodbc.connect(
f"Driver={drivers[-1]};"
"Server=server;"
"Database=dbname;"
"UID=username;"
"PWD=password;"
)
return conn

它只是返回了一个空列表,确认没有驱动程序,但根据我的需求文件,它将pyodbc作为一个包导入。

它试图连接到的数据库是使用GCPSQL托管的,身份验证没有问题,所以它实际上只是缺少驱动程序。但是,我找不到任何关于在中添加这些的文档。我发现了这个使用gcloud -beta config的文档,但它后来被弃用了。

您必须首先安装驱动程序。ODBC驱动程序不可pip安装。

为SQL Server(Linux(安装Microsoft ODBC驱动程序

相关内容

  • 没有找到相关文章

最新更新