如何连接到Anaconda中的SQL Server数据库

时间:2013-11-28 20:53:26

标签: python sql-server odbc anaconda

我对Python和编程很新,所以请耐心等待。在我的工作中,我安装了Anaconda(Python vers 2.7)并希望连接到Microsoft SQL Server数据库,最好是使用ODBC。与此任务相关,我有很多问题:

  • 使用sqlite3或sqlalchemy无法连接到SQL Server数据库是否正确?我需要像pyodbc这样的模块?为什么会出现这种情况的简要解释将非常感激。

  • 编辑:有关在anaconda中安装pyodbc的问题已删除,因为我想出了这一点(通过阅读Cannot Install Python Modules after Installing Anaconda

非常感谢帮助!如果我的任何问题/任何其他细节需要清理,请不要犹豫。谢谢

1 个答案:

答案 0 :(得分:6)

我不使用Anaconda,但我使用各种数据库和ODBC。首先,您可以尝试安装odbc模块。它是pywin32包(http://sourceforge.net/projects/pywin32/files/)的一部分,并且包含ActiveState Python发行版。其他发行版可以单独安装。只需尝试:

import odbc
db = odbc.odbc('dsn/user/password')

您也可以尝试使用您提到的pyodbc。有Windows的预编译版本,我认为它将适用于您的Anaconda环境。安装后尝试:

import pyodbc
db = pyodbc.connect('Driver={SQL Server Native Client 10.0};Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;')

您可以在http://www.connectionstrings.com/

找到更多连接字符串

修改

您似乎遇到ODBC驱动程序 bitness 的问题。

尝试运行此程序以查看ODBC管理器可以看到哪些源:

import odbc

source =  odbc.SQLDataSources(odbc.SQL_FETCH_FIRST)
while source:
    print(source)
    source =  odbc.SQLDataSources(odbc.SQL_FETCH_NEXT)