要连接到SQL服务器,我有以下内容。
conn = pypyodbc.connect("DRIVER={SQL Server};server='sqldev\\dwmaster',Database='risk',TrustedConnection=yes")
cur = conn.cursor()但是,当我运行应用程序时,它会抛出错误。
pypyodbc.DatabaseError:(“08001”,“08001ODBCSQLServer DriverSpecified Server未找到”)
我能够从OSQL和SQLCMD访问SQLserver。
发布于 2013-06-06 20:25:53
谢谢你的建议萨姆。
最后,通过设置一个32位ODBC驱动程序来解决这个问题,而不是使用连接字符串。
发布于 2013-06-06 20:12:12
您要么由于网络连接而出现问题,要么由于命名实例而出现问题。命名的实例是'dwmaster‘/服务器键/值的一部分。SQL默认位于tcp 1433上,但命名实例可能不在该端口上,也可能位于动态端口上。为了获得端口,客户端询问UDP 1434上的SQL浏览器服务--“DWMASTER实例的端口是什么?”
有些数据库提供程序不与sql浏览器交互以查找实例正在侦听的端口,因此必须在连接字符串中指定它。您可能也希望将命名实例设置为使用静态IP。
若要将命名实例排除为问题,您可以查看服务器启动时sql管理日志中它正在运行的端口。在连接字符串中指定端口号,这可能会起作用。您必须查阅pypy文档来了解如何指定端口。
如果您在那里没有成功,应该测试到dns名称和端口的连接性。防火墙可能会阻塞您的通信。您可以根据操作系统使用telnet、portqry或其他工具。Ping不是一个有效的测试。如果无法建立连接,则需要与服务器/网络支持部门交谈。
对sql默认端口的Telnet测试
telnet myserver -1433测试sql浏览器
portqry -n server -p udp -e 1434测试sql默认值
portqry -n server -e 1433https://stackoverflow.com/questions/16969595
复制相似问题