首页 > 解决方案 > Pypyodbc 无法连接到启动测试的服务器

问题描述

使用 db 交互编写一些测试。需要在没有 sudo 的情况下在远程桌面上运行测试,所以在 virtualenv 中工作。我可以像这样通过python解释器连接到数据库服务器:

> python
Python 3.9.5 (tags/v3.9.5:0a7dcbd, May  3 2021, 17:27:52) [MSC v.1928 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import pypyodbc
>>> c = pypyodbc.connect('DRIVER={SQL Server};SERVER={server_name_here};DATABASE={db_name_here};Trusted_Connection=yes')
>>>

这工作正常,让我执行查询。

现在启动一个与相同连接字符串pytest -m progress完全相同的测试db = pyodbc.connect(connection_string)会引发错误

pypyodbc.DatabaseError: ('08001', '[08001] [Microsoft][ODBC SQL Server Driver][DBNETLIB]SQL Server does not exist or access denied.')

virtualenv 是否以不同的用户身份出现在 db 中?或者问题可能出在哪里?

标签: python-3.xpytestpypyodbc

解决方案


推荐阅读