[Python]pymssql 安裝成功但import failed

這個狀況在我本機電腦沒有發生

反而是在 Server掛排程的時候發現的...

從Task Scheduler執行排程時發現 為什麼程式會噴錯誤

ImportError: No module named pymssql

使用pip list 也有看到pymssql 

第一個猜想應該是 Lib 可能載入的位置不同

可以透過以下幾個方式驗證

1. 寫一個print_lib.py

import sys

print(sys.path)

2. 在要執行的 exe_program.py 檔中 import print_lib.py

3. 先在sypder/vscode 執行 exe_program.py
將此時的sys.path記錄下來

4. 執行排程前, 如果你是用bat 執行排程 那就加pause就好
如果不是 請建立一個run_exec_program.bat 

"安裝的python.exe" "exec_program.py"
pause

以我為例 我的路徑如下
安裝的python.exe : D:\Anaconda\python.exe
exec_program.py : D:\folder\exec_program.py

這時候用排程執行就會看到排程抓到的sys.path

此時如果你跟我一樣排程的output和sypder/vscode的output不一樣時, 再往下做就好了 如果一樣...建議參考別的文章XD

5. 開啟cmd 命令提示字元

where python

如果有兩個路徑 請將兩個路徑都設定至命令提示字元中

設定完成應該就好囉!!

參考資料: https://stackoverflow.com/questions/26034491/importerror-no-module-named-pymssql-error-when-run-from-batch-file

-----------------------------------------

有時在會走之前你就得跑

你不解決問題 就等問題解決你