2016-08-01 65 views
1

我是Mac新手,並且遇到問題試圖讓pyodbc工作。我已經安裝:使用pyodbc在OS X上連接到Teradata

,當我嘗試使用下面的連接字符串創建連接:

pyodbc.connect('DRIVER={Teradata};DBCName=XXX;DATABASE=XXX;Authentication=TD2;UID=XXX;PWD=XXX')

我收到此錯誤:

錯誤:( '01000'。 「[01000] [的unixODBC] [驅動程序管理器]無法打開LIB 'Teradata的':未找到文件(0)(的SQLDriverConnect)」)

我不知道從這往哪兒走。另外,我不確定它是否相關,但我正在使用virtualenvwrapper創建我的python環境。

我看到這個類似的問題(返回錯誤是不同的)。 Connect Python to Teradata in mac with pyodbc 並運行出口報表,但我仍然得到相同的錯誤

+0

是否遵循在http://developer.teradata.com/blog/odbcteam/2016/02/python-with-teradata-odbc發現 – dnoeth

+0

這些指令是特定於UNIX的說明 – dobbysock1002

回答

0

我一直遇到這個相同的問題。我採取了下面的行動,問題解決了(不知道哪個行動真的解決了問題,但)。

  • 重新配置pyodbc包。

    當通過Git的安裝pyodbc,改變setup.py如下

    elif sys.platform == 'darwin': 
    # OS/X now ships with iODBC. 
    settings['libraries'].append('iodbc') 
    settings['libraries'].append('odbc') 
    
  • 設置ODBC.INI環境變量和庫

    通過

    sudo find/-name odbc*.ini 2>/dev/null 
    
    檢查ODBC目錄

    然後將環境變量設置爲(取決於您的odbc目錄)

    export ODBCINI=/Library/Application\ Support/teradata/client/15.10/odbc/odbc.ini 
    export ODBCSYSINI=/Library/Application\ Support/teradata/client/15.10/odbc 
    export LD_LIBRARY_PATH=/Library/Application\ Support/teradata/client/15.10/lib:$LD_LIBRARY_PATH 
    export LD_LIBRARY_PATH=/Library/Application\ Support/teradata/client/15.10/lib/:$LD_LIBRARY_PATH