python使用mysql-connector-python連線mysql時報錯No module named 'mysql.connector'; 'mysql' is not a package
阿新 • • 發佈:2018-12-29
情況是這樣的:
我在專案A下建立了一個python檔案,編寫程式碼
import mysql.connector
mydb = mysql.connector.connect(
host="hostname", # 資料庫主機地址
port='port',
user="root", # 資料庫使用者名稱
passwd="password", # 資料庫密碼
database='databasename'
)
print(mydb)
執行時報錯,錯誤資訊為
No module named 'mysql.connector'; 'mysql' is not a package
機智的我無路可走,在專案B下建立了一個python檔案,把剛剛的程式碼複製過去,竟然可以執行,很神奇對吧!
可是,為什麼會這樣呢???沒有道理啊!
知道後來,我才發現,專案A下有一個名字叫做 mysql.py 的檔案
原來,這個玩意就是萬惡之源啊
我的程式碼
import mysql.connector
直接就找這個mysql.py檔案,而不是執行系統自帶的mysql模組。
於是我把mysql.py名字改成mysql1.py,效果立竿見影!
看到了吧,我寫的程式碼也跟著改了,這恰恰證明,這個
import mysql.connector
是連線到專案裡面的mysql.py檔案,而不是連線到系統的mysql模組。
我們再把
import mysql1.connector 改成 import mysql.connector
問題解決。