python - 我应该如何使用 pyodbc 配置与 MS Azure 云数据库的连接?

标签 python azure azure-sql-database pyodbc

我正在设置一个 python 脚本来连接到 azure 云数据库的实例,并发现使用 IDLE 时的连接与尝试从脚本执行连接时的连接有所不同。例如,当我在 IDLE 中执行以下操作时:

>>> import pyodbc
>>> conn = pyodbc.connect('DRIVER={SQL Server};SERVER=<my.database.host.info>,1433', user='<my_username@mydatabase', password='password', database='database')

我能够成功连接并针对数据库中的一个表执行基本查询。

但是,当我在脚本中使用相同的连接字符串(从 IDLE 控制台复制)时,出现以下错误:

pyodbc.Error: ('IM002', '[IM002] [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified (0) (SQLDriverConnect)')

最佳答案

通常是因为32/64位版本的python环境和odbc驱动不匹配而引发该问题。

您可以检查用于运行脚本的python版本和odbc驱动程序版本。您必须设法将它们都更改为 32 位(或都为 64 位)才能使其正常工作。

可以从http://www.lfd.uci.edu/~gohlke/pythonlibs/#pyodbc获取指定版本的pyodbc扩展.

关于python - 我应该如何使用 pyodbc 配置与 MS Azure 云数据库的连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35879288/

相关文章:

适用于所有存储库的 Azure DevOps 通用分支策略构建管道

sql-server - Azure SQL 数据库管理员权限

sql - CTE 与 DELETE - SQL 数据仓库的替代方案

sql-server - Azure - 使用本地 (Azure) IP 的 Web 到 SQL

python - 使用 Python 修改和写入现有 excel 文件中的数据

python - 我怎样才能使用 SQLAlchemy 做 "mysql explain"

python - 我无法使用本地 Python 脚本中的矢量填充 Azure 上托管的 Redis Enterprise 矢量数据库

azure - 使用 Powershell CLI 获取 Azure VM 的 NSG

Python - 实现 __iter__ 或返回列表的 __iter__

Python 命令行参数