问题描述
我正在尝试使用pyodbc连接到sql Server以查询某些表以进行工作。我能够连接到其中一台服务器并运行SQL查询,但是相同的代码不适用于其他服务器。我收到的错误消息是这样的:
Error: ('008001','[08001] [Microsoft][ODBC sql Server Driver][dbnETLIB]
sql Server does not exist or access denied. (17) (sqlDriverConnect)')
这是我正在使用的代码:
import pyodbc
import pandas as pd
conn = pyodbc.connect('Driver={sql Server};'
'Server=servername;'
'Database=databasename;'
'Trusted_Connection=yes;')
[rest of code]
该代码适用于一台服务器,但是当我将服务器和数据库名称更改为另一台服务器时,会收到错误消息(服务器/数据库名称中没有拼写错误)。我可以通过sql访问此服务器。另外,我可以使用Excel VBA访问该服务器并查询/更新其表(即使它无法在Python中连接)。
根据我的研究,我可能不完全理解很多可能的问题。我试图在代码中更改驱动程序名称,但失败了。由于此代码适用于工作,因此具有安全权限,这使我无法尝试某些解决方案。
什么可能导致此问题?如果有人能够向我指出正确的方向,那么如果我自己无法解决问题,那将帮助我向IT团队提出更好的问题。
(我正在将Microsoft sql Server Management Studio 17和Python 3.6与Spyder一起使用。)
解决方法
尝试使用此驱动程序:
_schedule.Remove(key);
_schedule.Add(key,"value");