我正在尝试使用pyodbc功能与以下连接字符串进行连接:
DRIVER={SQL Native Client}
。
收到以下错误:
Error connecting to database: [IM002] [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified (0) (SQLDriverConnect)
主要问题是在我的机器上一切都像魅力一样,而在其他机器上执行会返回上面的错误。
非常感谢!
答案 0 :(得分:0)
这可能是因为您的连接字符串指定了一些Windows数据源(数据源实际上是一个os级别名),它存在于您的计算机上,但在其他计算机上不存在。您可能需要在其他计算机上定义数据源。
正如Flipper建议的那样,首先检查你的连接字符串,以确定数据源的名称是什么。然后检查您的机器如何配置数据源,然后在其他机器上创建和配置类似的数据源。
可以查看数据源上这个ms dev-net页面上的信息和链接:
答案 1 :(得分:0)
所有Windows安装都包含旧版" SQL Server"的副本。 ODBC驱动程序
Driver={SQL Server}
因此,对于32位和64位应用程序,应该可以在任何Windows计算机上使用。
更新版本的SQL Server引入了自己的客户端软件以支持其最新功能。像
这样的驱动程序 Driver={SQL Native Client}
(9.0,对于SQL Server 2005)
Driver={SQL Server Native Client 10.0}
(适用于SQL Server 2008)
Driver={SQL Server Native Client 11.0}
(适用于SQL Server 2012/2014)
仅在计算机安装了所需的SQL Server客户端软件时才有效。 (对于不能运行SQL Server本身的计算机,它可以单独下载和安装,通常作为" SQL Server Feature Pack"的一部分。)
所以,如果你真的需要更高级的功能,那么#34; Native Client"然后,您必须确保ODBC驱动程序安装在其他计算机上。否则,只需坚持使用旧的" SQL Server"驱动程序。