pyodbc错误:找不到数据源名称(Win8)

时间:2014-10-20 08:03:47

标签: python driver pyodbc

我正在尝试使用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)

主要问题是在我的机器上一切都像魅力一样,而在其他机器上执行会返回上面的错误。

非常感谢!

2 个答案:

答案 0 :(得分:0)

这可能是因为您的连接字符串指定了一些Windows数据源(数据源实际上是一个os级别名),它存在于您的计算机上,但在其他计算机上不存在。您可能需要在其他计算机上定义数据源。

正如Flipper建议的那样,首先检查你的连接字符串,以确定数据源的名称是什么。然后检查您的机器如何配置数据源,然后在其他机器上创建和配置类似的数据源。

可以查看数据源上这个ms dev-net页面上的信息和链接:

ODBC Data Source Administrator

答案 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"驱动程序。