pyodbc 在win7上面遇到 im002
預到的問題:
在用python設計SQL讀寫採用pyodbc,
使用以下語法,在win8上運行正常
driver = '{ODBC Driver 17 for SQL Server}'
self.cnxn = pyodbc.connect( 'DRIVER=' + driver + ';PORT=1433;SERVER=' + server + ';PORT=1443;DATABASE=' + database + ';UID=' + username + ';PWD=' + password, timeout=2)
但在另一台win7無python環境上發生錯誤:('IM002','未找到 [IM002] [Microsoft] [ODBC Driver Manager] 數據源名稱,沒有指定默認驅動程序( 0 ) ( SQLDriverConnect ) )
由以下的方法可以知道該電腦有的odbc driver為何,再修改python程式
在 Windows 10 中開啟 ODBC 資料來源管理員
- 在 [開始] 頁面上輸入 ODBC 資料來源。 「ODBC 資料來源傳統型應用程式」應該會出現在搜尋選項中。
若要在 Windows 7 中開啟 ODBC 資料來源管理員
- 在 [開始] 功能表上,按一下 [控制台]。
- 在 [控制台] 中,按一下 [系統管理工具]。
- 在 [系統管理工具] 中,按一下 [資料來源 (ODBC)]。
若要在 Windows Server 2008 中開啟 ODBC 資料來源管理員
- 在 [開始] 功能表上,指向 [系統管理工具],然後按一下 [資料來源 (ODBC)]。
最後改用以下程式碼,二邊都可以使用
driver = '{SQL Server}'
留言