在使用SQLAlchemy调用mysql数据库时报错

在使用SQLAlchemy调用mysql数据库时报错

问题描述:

此报错的环境为:Python3.6.6 pychar2018.2

在pychar中编写的书程序如下:
from flask_sqlalchemy import SQLAlchemy
from flaskapp import app

app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql+pymsql://root:111111@127.0.0.1:3306/test'
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = True

db = SQLAlchemy(app)

class Role(db.Model):
tablename ='roles'
id = db.Column(db.Integer,primary_key=True,autoincrement=True,nullable=False)
name = db.Column(db.String(32),unique=True,nullable=False)
if name == '__main__':
#创建一个roles表
db.create_all()

但是在运行后报的错误为:sqlalchemy.exc.NoSuchModuleError: Can't load plugin: sqlalchemy.dialects:mysql.pymsql

在网上查询相关错误解决方法后,表示没有安装mysql驱动,但是有的帖子说在Python2.7后不用mysql-python。这个环境中已经安装了pymysql。

但是在安装mysql-Python时报如下错误:
图片说明

请问各位大声该如何结局,谢谢!

如能解决我会多付80c币

你把 app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql+pymsql://root:111111@127.0.0.1:3306/test'
改成app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql://root:111111@127.0.0.1:3306/test' 试试

你那个mysql+pymsql少个y所以出现这个问题 正确的应该是mysql+pymysql