開發環境如下
MAC OS+Anaconda+Spyder(python 3.6.1)
之前iPython Console都好好的,可能最近升級Anaconda的關係? 部分error會輸出亂碼T_T
按照這篇how can I show all warnings in the iPython console in Spyder?升級qtconsole 也沒用
反正error跟SQL command有關,懶得再動整個Anaconda環境,就直接進Terminal用isql執行SQL command看詳細錯誤(−_−;)
搞定XD
Can't open lib 'ODBC Driver 13 for SQL Server'
上一篇Install pyodbc on MAC 除了說明安裝方式,也提到無法import pyodbc時要怎麼解決
接下來就是寫程式
結果SQL連線馬上卡關,會遇到如下錯誤
('01000', "[01000] [unixODBC][Driver Manager]Can't open lib 'ODBC Driver 13 for SQL Server' : file not found (0) (SQLDriverConnect)")
弄了二天,剛安裝的driver或package都不知道亂裝了幾道 囧
在終端機下tsql指令也確實能連接資料庫並取回資料
tsql可以正常執行 isql卻不行嗚嗚
網路上大家說的freetds.conf、odbcinst.ini、odbc.ini也都設定了依舊無解(我懷疑是因為anconda的虛擬環境我不熟 >"<)
最終還是找到了勉強的解法,可以順利在Anconda下的Spyder繼續寫程式了
解法請參考文章PyODBC : can't open the driver even if it exists中Karen Chang的回答
接下來就是寫程式
結果SQL連線馬上卡關,會遇到如下錯誤
('01000', "[01000] [unixODBC][Driver Manager]Can't open lib 'ODBC Driver 13 for SQL Server' : file not found (0) (SQLDriverConnect)")
弄了二天,剛安裝的driver或package都不知道亂裝了幾道 囧
在終端機下tsql指令也確實能連接資料庫並取回資料
tsql可以正常執行 isql卻不行嗚嗚
最終還是找到了勉強的解法,可以順利在Anconda下的Spyder繼續寫程式了
解法請參考文章PyODBC : can't open the driver even if it exists中Karen Chang的回答
Install pyodbc on MAC
在MAC環境透過python連接SQL Server有二款知名的套件pyodbc、pymssql 微軟說明
安裝步驟如下
- 打開終端機
- 依序輸入這些指令
brew update
brew install unixodbc
brew install freetds --with-unixodbc
指令參考來源
ps:brew update不一定要, 看個人 - 繼續輸入conda指令 安裝pyodbc
conda install -c anaconda pyodbc=4.0.16
指令參考來源 - 開啟IDE開始寫程式
import pyodbc 確認是否安裝成功 - 如果不成功會出現下列錯誤
ImportError: dlopen(/Users/karenchang/anaconda/lib/python3.6/site-packages/pyodbc.cpython-36m-darwin.so, 2): Symbol not found: _PySlice_AdjustIndices
Referenced from: /Users/karenchang/anaconda/lib/python3.6/site-packages/pyodbc.cpython-36m-darwin.so
Expected in: flat namespace in /Users/karenchang/anaconda/lib/python3.6/site-packages/pyodbc.cpython-36m-darwin.so - 承上,解決方式為升級python至3.6.1以上
像我本來是3.6.0 升級後就可以import pyodbc 了
解決方式參考文章
訂閱:
文章 (Atom)