【发布时间】:2020-03-13 18:05:56
【问题描述】:
当我使用 Pyodbc 连接和 SQL Anywhere 17 驱动程序连接到 Sybase 数据库时,我正在使用 Ubuntu 18.04,同时尝试建立连接,但我的 Jupyter 笔记本死了。 期望是,我应该能够在 Ubunt 中运行此代码并连接到 Sybase DB。
我可以毫无问题地从 Windows 连接和运行查询(使用 DSN)。
我一直在使用其他驱动程序和 SQL Server、MySQL 和 MariaDB,我没有遇到任何问题。 我相信连接到 Sybase 数据库需要 SQLANYWHERE DRVIER。
如果有人知道当我使用 DSN 时如何获取从 pyodbc 传递到服务器的连接字符串?(也许这可以让我知道我做错了什么)。
一些建议?
代码在 windows 中运行没有问题
import pyodbc
import pandas as pd
cnxn = pyodbc.connect("DSN=RevDSN")
print(cnxn)
data = pd.DataFrame(pd.read_sql_query(query, cnxn))
cnxn.close()
【问题讨论】:
-
您尝试连接的“Sybase DB”是“SAP SQL Anywhere”数据库还是“SAP ASE”数据库? “SQL Anywhere”和“ASE”是not the same thing。
标签: python database kernel pyodbc sqlanywhere