1. 程式人生 > >django中連線Mysql資料庫相容Python 2.x 與 Python

django中連線Mysql資料庫相容Python 2.x 與 Python

Python 2.x的官方支援要到2020就截止了,djagon 2.0以上的版本則明確不支援python 2.7版本,需要python 3.5+,而有的專案有的需要相容性,比如要連線Mysql資料庫的第三方庫, Python 2.x使用的是MySQLdb模組,Python 3.x使用的是pymysql, 是django框架中,經常會報沒有MySQLdb模組的錯誤,這個因為裡面的base.py裡面沒有匯入MySQLdb

C:\Users\Administrator>python3
Python 3.6.5 (v3.6.5:f59c0932b4, Mar 28 2018, 17:00:18) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import MySQLdb
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'MySQLdb'

但裡面確使用MySQLdb的屬性,這個時候處理起來也很簡單,只需要:

>>> import pymysql
>>> pymysql.install_as_MySQLdb()
>>> import MySQLdb
>>>

執行了上面兩條語句,就可以相容pymysql和MySQLdb

備註:

1. 在Python 2.x似乎不能直接使用pip install 來安裝

2. 在Python 3.x中可以使用python3 -m pip install pymysql來安裝,非常方便!