Python3 使用flask_sqlalchemy 报错ModuleNotFoundError: No module named 'MySQLdb'

Python3 使用flask_sqlalchemy 报错ModuleNotFoundError: No module named 'MySQLdb'

 

原因:

python3  连接数据库驱动是   pymysql
python2 连接数据驱动可以用  pymysql、MySQLdb
sqlalchemy 默认使用 MySQLdb 连接数据库

所以报错!

解决办法:

import pymysql
pymysql.install_as_MySQLdb() 

 

示例:

from flask import Flask
from flask_sqlalchemy import SQLAlchemy
import pymysql

pymysql.install_as_MySQLdb()
app = Flask(__name__)
db = SQLAlchemy(app)
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql://root:[email protected]:3306/flask?charset:utf-8'
app.config['SQLALCHEMY_ECHO'] = True


class DFG(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(50))

 

你可能感兴趣的:(Python,MySQL,flask,sqlalchemy)