2012-06-19 158 views
4

我有Python 2.7,MySQL 5.5,MySQL ODBC連接器5.1和pyodbc所有安裝在我的電腦上,這是運行Windows 7,64位...如何安裝pyodbc 64位?

唯一的問題是,一切都安裝爲64位除了pyodbc,這是32位。

當使用easy_install下載pyodbc時,它會自動下載32位版本。 因此,當我嘗試連接到我的數據庫使用:

cnxn = pyodbc.connect('DRIVER={MySQL ODBC 5.1 DRIVER};SERVER=localhost;DATABASE=test;UID=root;PWD=password') 

我得到的錯誤:

Data source name not found and no default driver specified (0) (SQLDriverConnect) 

當我嘗試指定一個DSN:

cnxn = pyodbc.connect('DSN=dsn_name;etc...') 

我得到錯誤:

The specified DSN contains an architecture mismatch between the Driver and Application (0) (SQLDriverConnect) 

這個鏈接告訴我,這是由於六十四分之三十二位不匹配,符合市場預期: http://msdn.microsoft.com/en-us/library/windows/desktop/ms712362(v=vs.85).aspx

所以我有兩個問題:

1)是否有可能迫使easy_install的下載64 bit pyodbc,還是有可能手動下載64位pyodbc?

2)如果上述不可行,是否可以使用Microsoft ODBC Data Source Administrator窗口配置DSN以允許此操作。

謝謝。

回答

3

還有就是「非官方」 Python模塊here

PyODBC是那些已經被編譯爲64位的一個列表。

此外,請確保您使用的是正確版本的ODBC管理員。默認情況下將爲64位驅動程序,但您可以使用32位驅動程序與%windir%\SysWOW64\odbcad32.exe

+1

我試過安裝程序,但我不斷收到錯誤消息「Python版本2.7所需,這是在註冊表中找不到」即使我在我的註冊表中找到了Python 2.7。有沒有辦法指定安裝程序應該檢查註冊表中的哪個位置? – aensm

+1

您的python安裝32位? – swasheck

+0

不,我的python安裝是64位的。 – aensm