如果是安裝的是mysql-python,後import MySQLdb報錯. 那麼建議不要使用mysql-python了. 在Python3.6版本以後也沒有支援.
我個人使用的是第三方庫pymysql,在終端中輸入以下代碼安裝
sudo pip install pymysql
安裝後, 如果使用的是flask_sqlalchemy 注意更改驅動的名字為pymysql
SQLALCHEMY_DATABASE_URI = '[資料庫名]+[資料庫中介軟體(驅動)]://[使用者名稱]:[password]@[主機IP地址]:[連接埠號碼]/[資料庫名字]?charset=utf8'SQLALCHEMY_TRACK_MODIFICATIONS = True
以下是一個用於串連資料庫的設定檔執行個體
# -*- coding:utf-8 -*-# config.pyDIALECT = 'mysql'DRIVER = 'pymysql'USERNAME = 'root'PASSWORD = 'root'# HOST = '127.0.0.1' # 自己電腦的ip 或者localhostHOST = 'localhost' # 自己電腦的ipPORT = '3306' # MySQL預設的連接埠號碼DATABASE = 'db_demo1'# SQLALCHEMY_DATABASE_URI = '[資料庫名]+[資料庫中介軟體(驅動)]://[使用者名稱]:[password]@[主機IP地址]:[連接埠號碼]/[資料庫名字]?charset=utf8'# SQLALCHEMY_TRACK_MODIFICATIONS = True# 資料庫連接必須用這個名字 SQLALCHEMY_DATABASE_URISQLALCHEMY_DATABASE_URI = "{}+{}://{}:{}@{}:{}/{}?charset=utf8".format(DIALECT, DRIVER, USERNAME, PASSWORD, HOST, PORT, DATABASE)
# -*- coding:utf-8 -*-# db_test.pyfrom flask import Flaskfrom flask_sqlalchemy import SQLAlchemyimport configapp = Flask(__name__)app.config.from_object('config')db = SQLAlchemy(app)db.create_all()@app.route('/')def index(): return 'index'if __name__ == '__main__': app.run()
如果是安裝的是mysql-python,後import MySQLdb報錯. 那麼建議不要使用mysql-python了. 在Python3.6版本以後也沒有支援.
我個人使用的是第三方庫pymysql,在終端中輸入以下代碼安裝
sudo pip install pymysql
安裝後, 如果使用的是flask_sqlalchemy 注意更改驅動的名字為pymysql
SQLALCHEMY_DATABASE_URI = '[資料庫名]+[資料庫中介軟體(驅動)]://[使用者名稱]:[password]@[主機IP地址]:[連接埠號碼]/[資料庫名字]?charset=utf8'SQLALCHEMY_TRACK_MODIFICATIONS = True
以下是一個用於串連資料庫的設定檔執行個體
# -*- coding:utf-8 -*-# config.pyDIALECT = 'mysql'DRIVER = 'pymysql'USERNAME = 'root'PASSWORD = 'root'# HOST = '127.0.0.1' # 自己電腦的ip 或者localhostHOST = 'localhost' # 自己電腦的ipPORT = '3306' # MySQL預設的連接埠號碼DATABASE = 'db_demo1'# SQLALCHEMY_DATABASE_URI = '[資料庫名]+[資料庫中介軟體(驅動)]://[使用者名稱]:[password]@[主機IP地址]:[連接埠號碼]/[資料庫名字]?charset=utf8'# SQLALCHEMY_TRACK_MODIFICATIONS = True# 資料庫連接必須用這個名字 SQLALCHEMY_DATABASE_URISQLALCHEMY_DATABASE_URI = "{}+{}://{}:{}@{}:{}/{}?charset=utf8".format(DIALECT, DRIVER, USERNAME, PASSWORD, HOST, PORT, DATABASE)
# -*- coding:utf-8 -*-# db_test.pyfrom flask import Flaskfrom flask_sqlalchemy import SQLAlchemyimport configapp = Flask(__name__)app.config.from_object('config')db = SQLAlchemy(app)db.create_all()@app.route('/')def index(): return 'index'if __name__ == '__main__': app.run()